<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="en-US">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
<meta name="generator" content="Doxygen 1.13.1"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>mi-malloc: mimalloc-doc.h Source File</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<script type="text/javascript" src="clipboard.js"></script>
<link href="navtree.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="navtreedata.js"></script>
<script type="text/javascript" src="navtree.js"></script>
<script type="text/javascript" src="resize.js"></script>
<script type="text/javascript" src="cookie.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
  $(function() { init_search(); });
/* @license-end */
</script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
<link href="mimalloc-doxygen.css" rel="stylesheet" type="text/css"/>
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
 <tbody>
 <tr id="projectrow">
  <td id="projectlogo"><img alt="Logo" src="mimalloc-logo.svg"/></td>
  <td id="projectalign">
   <div id="projectname">mi-malloc<span id="projectnumber">&#160;1.8/2.1</span>
   </div>
  </td>
    <td>        <div id="MSearchBox" class="MSearchBoxInactive">
        <span class="left">
          <span id="MSearchSelect"                onmouseover="return searchBox.OnSearchSelectShow()"                onmouseout="return searchBox.OnSearchSelectHide()">&#160;</span>
          <input type="text" id="MSearchField" value="" placeholder="Search" accesskey="S"
               onfocus="searchBox.OnSearchFieldFocus(true)" 
               onblur="searchBox.OnSearchFieldFocus(false)" 
               onkeyup="searchBox.OnSearchFieldChange(event)"/>
          </span><span class="right">
            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.svg" alt=""/></a>
          </span>
        </div>
</td>
 </tr>
 </tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.13.1 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "search/",'.html');
/* @license-end */
</script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
$(function() { codefold.init(0); });
/* @license-end */
</script>
</div><!-- top -->
<div id="side-nav" class="ui-resizable side-nav-resizable">
  <div id="nav-tree">
    <div id="nav-tree-contents">
      <div id="nav-sync" class="sync"></div>
    </div>
  </div>
  <div id="splitbar" style="-moz-user-select:none;" 
       class="ui-resizable-handle">
  </div>
</div>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
$(function(){initNavTree('mimalloc-doc_8h_source.html',''); initResizable(true); });
/* @license-end */
</script>
<div id="doc-content">
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
     onmouseover="return searchBox.OnSearchSelectShow()"
     onmouseout="return searchBox.OnSearchSelectHide()"
     onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>

<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<div id="MSearchResults">
<div class="SRPage">
<div id="SRIndex">
<div id="SRResults"></div>
<div class="SRStatus" id="Loading">Loading...</div>
<div class="SRStatus" id="Searching">Searching...</div>
<div class="SRStatus" id="NoMatches">No Matches</div>
</div>
</div>
</div>
</div>

<div class="header">
  <div class="headertitle"><div class="title">mimalloc-doc.h</div></div>
</div><!--header-->
<div class="contents">
<div class="fragment"><div class="line"><a id="l00001" name="l00001"></a><span class="lineno">    1</span><span class="comment">/* ----------------------------------------------------------------------------</span></div>
<div class="line"><a id="l00002" name="l00002"></a><span class="lineno">    2</span><span class="comment">Copyright (c) 2018-2025, Microsoft Research, Daan Leijen</span></div>
<div class="line"><a id="l00003" name="l00003"></a><span class="lineno">    3</span><span class="comment">This is free software; you can redistribute it and/or modify it under the</span></div>
<div class="line"><a id="l00004" name="l00004"></a><span class="lineno">    4</span><span class="comment">terms of the MIT license. A copy of the license can be found in the file</span></div>
<div class="line"><a id="l00005" name="l00005"></a><span class="lineno">    5</span><span class="comment">&quot;LICENSE&quot; at the root of this distribution.</span></div>
<div class="line"><a id="l00006" name="l00006"></a><span class="lineno">    6</span><span class="comment">-----------------------------------------------------------------------------*/</span></div>
<div class="line"><a id="l00007" name="l00007"></a><span class="lineno">    7</span> </div>
<div class="line"><a id="l00008" name="l00008"></a><span class="lineno">    8</span><span class="preprocessor">#error &quot;documentation file only!&quot;</span></div>
<div class="line"><a id="l00009" name="l00009"></a><span class="lineno">    9</span> </div>
<div class="line"><a id="l00010" name="l00010"></a><span class="lineno">   10</span></div>
<div class="line"><a id="l00092" name="l00092"></a><span class="lineno">   92</span> </div>
<div class="line"><a id="l00093" name="l00093"></a><span class="lineno">   93</span></div>
<div class="line"><a id="l00097" name="l00097"></a><span class="lineno">   97</span> </div>
<div class="line"><a id="l00098" name="l00098"></a><span class="lineno">   98</span></div>
<div class="line"><a id="l00102" name="l00102"></a><span class="lineno"><a class="line" href="group__malloc.html#gaf2c7b89c327d1f60f59e68b9ea644d95">  102</a></span><span class="keywordtype">void</span>  <a class="code hl_function" href="group__malloc.html#gaf2c7b89c327d1f60f59e68b9ea644d95">mi_free</a>(<span class="keywordtype">void</span>* p);</div>
<div class="line"><a id="l00103" name="l00103"></a><span class="lineno">  103</span></div>
<div class="line"><a id="l00108" name="l00108"></a><span class="lineno"><a class="line" href="group__malloc.html#gae1dd97b542420c87ae085e822b1229e8">  108</a></span><span class="keywordtype">void</span>* <a class="code hl_function" href="group__malloc.html#gae1dd97b542420c87ae085e822b1229e8">mi_malloc</a>(<span class="keywordtype">size_t</span> size);</div>
<div class="line"><a id="l00109" name="l00109"></a><span class="lineno">  109</span></div>
<div class="line"><a id="l00114" name="l00114"></a><span class="lineno"><a class="line" href="group__malloc.html#gae6e38c4403247a7b40d80419e093bfb8">  114</a></span><span class="keywordtype">void</span>* <a class="code hl_function" href="group__malloc.html#gae6e38c4403247a7b40d80419e093bfb8">mi_zalloc</a>(<span class="keywordtype">size_t</span> size);</div>
<div class="line"><a id="l00115" name="l00115"></a><span class="lineno">  115</span></div>
<div class="line"><a id="l00125" name="l00125"></a><span class="lineno"><a class="line" href="group__malloc.html#ga6686568014b54d1e6c7ac64a076e4f56">  125</a></span><span class="keywordtype">void</span>* <a class="code hl_function" href="group__malloc.html#ga6686568014b54d1e6c7ac64a076e4f56">mi_calloc</a>(<span class="keywordtype">size_t</span> count, <span class="keywordtype">size_t</span> size);</div>
<div class="line"><a id="l00126" name="l00126"></a><span class="lineno">  126</span></div>
<div class="line"><a id="l00139" name="l00139"></a><span class="lineno"><a class="line" href="group__malloc.html#ga0621af6a5e3aa384e6a1b548958bf583">  139</a></span><span class="keywordtype">void</span>* <a class="code hl_function" href="group__malloc.html#ga0621af6a5e3aa384e6a1b548958bf583">mi_realloc</a>(<span class="keywordtype">void</span>* p, <span class="keywordtype">size_t</span> newsize);</div>
<div class="line"><a id="l00140" name="l00140"></a><span class="lineno">  140</span></div>
<div class="line"><a id="l00151" name="l00151"></a><span class="lineno"><a class="line" href="group__malloc.html#ga23a0fbb452b5dce8e31fab1a1958cacc">  151</a></span><span class="keywordtype">void</span>* <a class="code hl_function" href="group__malloc.html#ga23a0fbb452b5dce8e31fab1a1958cacc">mi_recalloc</a>(<span class="keywordtype">void</span>* p, <span class="keywordtype">size_t</span> count, <span class="keywordtype">size_t</span> size);</div>
<div class="line"><a id="l00152" name="l00152"></a><span class="lineno">  152</span></div>
<div class="line"><a id="l00166" name="l00166"></a><span class="lineno"><a class="line" href="group__malloc.html#ga19299856216cfbb08e2628593654dfb0">  166</a></span><span class="keywordtype">void</span>* <a class="code hl_function" href="group__malloc.html#ga19299856216cfbb08e2628593654dfb0">mi_expand</a>(<span class="keywordtype">void</span>* p, <span class="keywordtype">size_t</span> newsize);</div>
<div class="line"><a id="l00167" name="l00167"></a><span class="lineno">  167</span></div>
<div class="line"><a id="l00177" name="l00177"></a><span class="lineno"><a class="line" href="group__malloc.html#ga61f46bade3db76ca24aaafedc40de7b6">  177</a></span><span class="keywordtype">void</span>* <a class="code hl_function" href="group__malloc.html#ga61f46bade3db76ca24aaafedc40de7b6">mi_mallocn</a>(<span class="keywordtype">size_t</span> count, <span class="keywordtype">size_t</span> size);</div>
<div class="line"><a id="l00178" name="l00178"></a><span class="lineno">  178</span></div>
<div class="line"><a id="l00188" name="l00188"></a><span class="lineno"><a class="line" href="group__malloc.html#ga8bddfb4a1270a0854bbcf44cb3980467">  188</a></span><span class="keywordtype">void</span>* <a class="code hl_function" href="group__malloc.html#ga8bddfb4a1270a0854bbcf44cb3980467">mi_reallocn</a>(<span class="keywordtype">void</span>* p, <span class="keywordtype">size_t</span> count, <span class="keywordtype">size_t</span> size);</div>
<div class="line"><a id="l00189" name="l00189"></a><span class="lineno">  189</span></div>
<div class="line"><a id="l00206" name="l00206"></a><span class="lineno"><a class="line" href="group__malloc.html#ga4dc3a4067037b151a64629fe8a332641">  206</a></span><span class="keywordtype">void</span>* <a class="code hl_function" href="group__malloc.html#ga4dc3a4067037b151a64629fe8a332641">mi_reallocf</a>(<span class="keywordtype">void</span>* p, <span class="keywordtype">size_t</span> newsize);</div>
<div class="line"><a id="l00207" name="l00207"></a><span class="lineno">  207</span> </div>
<div class="line"><a id="l00208" name="l00208"></a><span class="lineno">  208</span></div>
<div class="line"><a id="l00217" name="l00217"></a><span class="lineno"><a class="line" href="group__malloc.html#ga245ac90ebc2cfdd17de599e5fea59889">  217</a></span><span class="keywordtype">char</span>* <a class="code hl_function" href="group__malloc.html#ga245ac90ebc2cfdd17de599e5fea59889">mi_strdup</a>(<span class="keyword">const</span> <span class="keywordtype">char</span>* s);</div>
<div class="line"><a id="l00218" name="l00218"></a><span class="lineno">  218</span></div>
<div class="line"><a id="l00228" name="l00228"></a><span class="lineno"><a class="line" href="group__malloc.html#ga486d0d26b3b3794f6d1cdb41a9aed92d">  228</a></span><span class="keywordtype">char</span>* <a class="code hl_function" href="group__malloc.html#ga486d0d26b3b3794f6d1cdb41a9aed92d">mi_strndup</a>(<span class="keyword">const</span> <span class="keywordtype">char</span>* s, <span class="keywordtype">size_t</span> n);</div>
<div class="line"><a id="l00229" name="l00229"></a><span class="lineno">  229</span></div>
<div class="line"><a id="l00242" name="l00242"></a><span class="lineno"><a class="line" href="group__malloc.html#ga94c3afcc086e85d75a57e9f76b9b71dd">  242</a></span><span class="keywordtype">char</span>* <a class="code hl_function" href="group__malloc.html#ga94c3afcc086e85d75a57e9f76b9b71dd">mi_realpath</a>(<span class="keyword">const</span> <span class="keywordtype">char</span>* fname, <span class="keywordtype">char</span>* resolved_name);</div>
<div class="line"><a id="l00243" name="l00243"></a><span class="lineno">  243</span></div>
<div class="line"><a id="l00245" name="l00245"></a><span class="lineno">  245</span> </div>
<div class="line"><a id="l00246" name="l00246"></a><span class="lineno">  246</span><span class="comment">// ------------------------------------------------------</span></div>
<div class="line"><a id="l00247" name="l00247"></a><span class="lineno">  247</span><span class="comment">// Extended functionality</span></div>
<div class="line"><a id="l00248" name="l00248"></a><span class="lineno">  248</span><span class="comment">// ------------------------------------------------------</span></div>
<div class="line"><a id="l00249" name="l00249"></a><span class="lineno">  249</span></div>
<div class="line"><a id="l00253" name="l00253"></a><span class="lineno">  253</span></div>
<div class="line"><a id="l00256" name="l00256"></a><span class="lineno"><a class="line" href="group__extended.html#ga1ea64283508718d9d645c38efc2f4305">  256</a></span><span class="preprocessor">#define MI_SMALL_SIZE_MAX   (128*sizeof(void*))</span></div>
<div class="line"><a id="l00257" name="l00257"></a><span class="lineno">  257</span></div>
<div class="line"><a id="l00265" name="l00265"></a><span class="lineno"><a class="line" href="group__extended.html#ga7f050bc6b897da82692174f5fce59cde">  265</a></span><span class="keywordtype">void</span>* <a class="code hl_function" href="group__extended.html#ga7f050bc6b897da82692174f5fce59cde">mi_malloc_small</a>(<span class="keywordtype">size_t</span> size);</div>
<div class="line"><a id="l00266" name="l00266"></a><span class="lineno">  266</span></div>
<div class="line"><a id="l00274" name="l00274"></a><span class="lineno"><a class="line" href="group__extended.html#ga51c47637e81df0e2f13a2d7a2dec123e">  274</a></span><span class="keywordtype">void</span>* <a class="code hl_function" href="group__extended.html#ga51c47637e81df0e2f13a2d7a2dec123e">mi_zalloc_small</a>(<span class="keywordtype">size_t</span> size);</div>
<div class="line"><a id="l00275" name="l00275"></a><span class="lineno">  275</span></div>
<div class="line"><a id="l00289" name="l00289"></a><span class="lineno"><a class="line" href="group__extended.html#ga089c859d9eddc5f9b4bd946cd53cebee">  289</a></span><span class="keywordtype">size_t</span> <a class="code hl_function" href="group__extended.html#ga089c859d9eddc5f9b4bd946cd53cebee">mi_usable_size</a>(<span class="keywordtype">void</span>* p);</div>
<div class="line"><a id="l00290" name="l00290"></a><span class="lineno">  290</span></div>
<div class="line"><a id="l00300" name="l00300"></a><span class="lineno"><a class="line" href="group__extended.html#gac057927cd06c854b45fe7847e921bd47">  300</a></span><span class="keywordtype">size_t</span> <a class="code hl_function" href="group__extended.html#gac057927cd06c854b45fe7847e921bd47">mi_good_size</a>(<span class="keywordtype">size_t</span> size);</div>
<div class="line"><a id="l00301" name="l00301"></a><span class="lineno">  301</span></div>
<div class="line"><a id="l00309" name="l00309"></a><span class="lineno"><a class="line" href="group__extended.html#ga421430e2226d7d468529cec457396756">  309</a></span><span class="keywordtype">void</span> <a class="code hl_function" href="group__extended.html#ga421430e2226d7d468529cec457396756">mi_collect</a>(<span class="keywordtype">bool</span> force);</div>
<div class="line"><a id="l00310" name="l00310"></a><span class="lineno">  310</span></div>
<div class="line"><a id="l00315" name="l00315"></a><span class="lineno"><a class="line" href="group__extended.html#ga2d126e5c62d3badc35445e5d84166df2">  315</a></span><span class="keywordtype">void</span> <a class="code hl_function" href="group__extended.html#ga2d126e5c62d3badc35445e5d84166df2">mi_stats_print</a>(<span class="keywordtype">void</span>* out);</div>
<div class="line"><a id="l00316" name="l00316"></a><span class="lineno">  316</span></div>
<div class="line"><a id="l00322" name="l00322"></a><span class="lineno"><a class="line" href="group__extended.html#ga537f13b299ddf801e49a5a94fde02c79">  322</a></span><span class="keywordtype">void</span> <a class="code hl_function" href="group__extended.html#ga537f13b299ddf801e49a5a94fde02c79">mi_stats_print_out</a>(<a class="code hl_typedef" href="group__extended.html#gadf31cea7d0332a81c8b882cbbdbadb8d">mi_output_fun</a>* out, <span class="keywordtype">void</span>* arg);</div>
<div class="line"><a id="l00323" name="l00323"></a><span class="lineno">  323</span></div>
<div class="line"><a id="l00325" name="l00325"></a><span class="lineno"><a class="line" href="group__extended.html#ga3bb8468b8cfcc6e2a61d98aee85c5f99">  325</a></span><span class="keywordtype">void</span> <a class="code hl_function" href="group__extended.html#ga3bb8468b8cfcc6e2a61d98aee85c5f99">mi_stats_reset</a>(<span class="keywordtype">void</span>);</div>
<div class="line"><a id="l00326" name="l00326"></a><span class="lineno">  326</span></div>
<div class="line"><a id="l00328" name="l00328"></a><span class="lineno"><a class="line" href="group__extended.html#ga854b1de8cb067c7316286c28b2fcd3d1">  328</a></span><span class="keywordtype">void</span> <a class="code hl_function" href="group__extended.html#ga854b1de8cb067c7316286c28b2fcd3d1">mi_stats_merge</a>(<span class="keywordtype">void</span>);</div>
<div class="line"><a id="l00329" name="l00329"></a><span class="lineno">  329</span></div>
<div class="line"><a id="l00333" name="l00333"></a><span class="lineno"><a class="line" href="group__extended.html#gaf8e73efc2cbca9ebfdfb166983a04c17">  333</a></span><span class="keywordtype">void</span> <a class="code hl_function" href="group__extended.html#gaf8e73efc2cbca9ebfdfb166983a04c17">mi_thread_init</a>(<span class="keywordtype">void</span>);</div>
<div class="line"><a id="l00334" name="l00334"></a><span class="lineno">  334</span></div>
<div class="line"><a id="l00339" name="l00339"></a><span class="lineno"><a class="line" href="group__extended.html#ga0ae4581e85453456a0d658b2b98bf7bf">  339</a></span><span class="keywordtype">void</span> <a class="code hl_function" href="group__extended.html#ga0ae4581e85453456a0d658b2b98bf7bf">mi_thread_done</a>(<span class="keywordtype">void</span>);</div>
<div class="line"><a id="l00340" name="l00340"></a><span class="lineno">  340</span></div>
<div class="line"><a id="l00346" name="l00346"></a><span class="lineno"><a class="line" href="group__extended.html#gab1dac8476c46cb9eecab767eb40c1525">  346</a></span><span class="keywordtype">void</span> <a class="code hl_function" href="group__extended.html#gab1dac8476c46cb9eecab767eb40c1525">mi_thread_stats_print_out</a>(<a class="code hl_typedef" href="group__extended.html#gadf31cea7d0332a81c8b882cbbdbadb8d">mi_output_fun</a>* out, <span class="keywordtype">void</span>* arg);</div>
<div class="line"><a id="l00347" name="l00347"></a><span class="lineno">  347</span></div>
<div class="line"><a id="l00354" name="l00354"></a><span class="lineno"><a class="line" href="group__extended.html#ga292a45f7dbc7cd23c5352ce1f0002816">  354</a></span><span class="keyword">typedef</span> void (<a class="code hl_typedef" href="group__extended.html#ga292a45f7dbc7cd23c5352ce1f0002816">mi_deferred_free_fun</a>)(<span class="keywordtype">bool</span> force, <span class="keywordtype">unsigned</span> <span class="keywordtype">long</span> <span class="keywordtype">long</span> heartbeat, <span class="keywordtype">void</span>* arg);</div>
<div class="line"><a id="l00355" name="l00355"></a><span class="lineno">  355</span></div>
<div class="line"><a id="l00371" name="l00371"></a><span class="lineno"><a class="line" href="group__extended.html#ga3460a6ca91af97be4058f523d3cb8ece">  371</a></span><span class="keywordtype">void</span>   <a class="code hl_function" href="group__extended.html#ga3460a6ca91af97be4058f523d3cb8ece">mi_register_deferred_free</a>(<a class="code hl_typedef" href="group__extended.html#ga292a45f7dbc7cd23c5352ce1f0002816">mi_deferred_free_fun</a>* deferred_free, <span class="keywordtype">void</span>* arg);</div>
<div class="line"><a id="l00372" name="l00372"></a><span class="lineno">  372</span></div>
<div class="line"><a id="l00378" name="l00378"></a><span class="lineno"><a class="line" href="group__extended.html#gadf31cea7d0332a81c8b882cbbdbadb8d">  378</a></span><span class="keyword">typedef</span> void (<a class="code hl_typedef" href="group__extended.html#gadf31cea7d0332a81c8b882cbbdbadb8d">mi_output_fun</a>)(<span class="keyword">const</span> <span class="keywordtype">char</span>* msg, <span class="keywordtype">void</span>* arg);</div>
<div class="line"><a id="l00379" name="l00379"></a><span class="lineno">  379</span></div>
<div class="line"><a id="l00386" name="l00386"></a><span class="lineno"><a class="line" href="group__extended.html#gae5b17ff027cd2150b43a33040250cf3f">  386</a></span><span class="keywordtype">void</span> <a class="code hl_function" href="group__extended.html#gae5b17ff027cd2150b43a33040250cf3f">mi_register_output</a>(<a class="code hl_typedef" href="group__extended.html#gadf31cea7d0332a81c8b882cbbdbadb8d">mi_output_fun</a>* out, <span class="keywordtype">void</span>* arg);</div>
<div class="line"><a id="l00387" name="l00387"></a><span class="lineno">  387</span></div>
<div class="line"><a id="l00393" name="l00393"></a><span class="lineno"><a class="line" href="group__extended.html#ga83fc6a688b322261e1c2deab000b0591">  393</a></span><span class="keyword">typedef</span> void (<a class="code hl_typedef" href="group__extended.html#ga83fc6a688b322261e1c2deab000b0591">mi_error_fun</a>)(<span class="keywordtype">int</span> err, <span class="keywordtype">void</span>* arg);</div>
<div class="line"><a id="l00394" name="l00394"></a><span class="lineno">  394</span></div>
<div class="line"><a id="l00410" name="l00410"></a><span class="lineno"><a class="line" href="group__extended.html#gaa1d55e0e894be240827e5d87ec3a1f45">  410</a></span><span class="keywordtype">void</span> <a class="code hl_function" href="group__extended.html#gaa1d55e0e894be240827e5d87ec3a1f45">mi_register_error</a>(<a class="code hl_typedef" href="group__extended.html#ga83fc6a688b322261e1c2deab000b0591">mi_error_fun</a>* errfun, <span class="keywordtype">void</span>* arg);</div>
<div class="line"><a id="l00411" name="l00411"></a><span class="lineno">  411</span></div>
<div class="line"><a id="l00416" name="l00416"></a><span class="lineno"><a class="line" href="group__extended.html#ga5f071b10d4df1c3658e04e7fd67a94e6">  416</a></span><span class="keywordtype">bool</span> <a class="code hl_function" href="group__extended.html#ga5f071b10d4df1c3658e04e7fd67a94e6">mi_is_in_heap_region</a>(<span class="keyword">const</span> <span class="keywordtype">void</span>* p);</div>
<div class="line"><a id="l00417" name="l00417"></a><span class="lineno">  417</span></div>
<div class="line"><a id="l00426" name="l00426"></a><span class="lineno"><a class="line" href="group__extended.html#ga00ec3324b6b2591c7fe3677baa30a767">  426</a></span><span class="keywordtype">int</span>  <a class="code hl_function" href="group__extended.html#ga00ec3324b6b2591c7fe3677baa30a767">mi_reserve_os_memory</a>(<span class="keywordtype">size_t</span> size, <span class="keywordtype">bool</span> commit, <span class="keywordtype">bool</span> allow_large);</div>
<div class="line"><a id="l00427" name="l00427"></a><span class="lineno">  427</span></div>
<div class="line"><a id="l00439" name="l00439"></a><span class="lineno"><a class="line" href="group__extended.html#ga4c6486a1fdcd7a423b5f25fe4be8e0cf">  439</a></span><span class="keywordtype">bool</span> <a class="code hl_function" href="group__extended.html#ga4c6486a1fdcd7a423b5f25fe4be8e0cf">mi_manage_os_memory</a>(<span class="keywordtype">void</span>* start, <span class="keywordtype">size_t</span> size, <span class="keywordtype">bool</span> is_committed, <span class="keywordtype">bool</span> is_large, <span class="keywordtype">bool</span> is_zero, <span class="keywordtype">int</span> numa_node);</div>
<div class="line"><a id="l00440" name="l00440"></a><span class="lineno">  440</span></div>
<div class="line"><a id="l00453" name="l00453"></a><span class="lineno"><a class="line" href="group__extended.html#ga3132f521fb756fc0e8ec0b74fb58df50">  453</a></span><span class="keywordtype">int</span> <a class="code hl_function" href="group__extended.html#ga3132f521fb756fc0e8ec0b74fb58df50">mi_reserve_huge_os_pages_interleave</a>(<span class="keywordtype">size_t</span> pages, <span class="keywordtype">size_t</span> numa_nodes, <span class="keywordtype">size_t</span> timeout_msecs);</div>
<div class="line"><a id="l00454" name="l00454"></a><span class="lineno">  454</span></div>
<div class="line"><a id="l00467" name="l00467"></a><span class="lineno"><a class="line" href="group__extended.html#ga7795a13d20087447281858d2c771cca1">  467</a></span><span class="keywordtype">int</span> <a class="code hl_function" href="group__extended.html#ga7795a13d20087447281858d2c771cca1">mi_reserve_huge_os_pages_at</a>(<span class="keywordtype">size_t</span> pages, <span class="keywordtype">int</span> numa_node, <span class="keywordtype">size_t</span> timeout_msecs);</div>
<div class="line"><a id="l00468" name="l00468"></a><span class="lineno">  468</span> </div>
<div class="line"><a id="l00469" name="l00469"></a><span class="lineno">  469</span></div>
<div class="line"><a id="l00474" name="l00474"></a><span class="lineno"><a class="line" href="group__extended.html#gaad25050b19f30cd79397b227e0157a3f">  474</a></span><span class="keywordtype">bool</span> <a class="code hl_function" href="group__extended.html#gaad25050b19f30cd79397b227e0157a3f">mi_is_redirected</a>();</div>
<div class="line"><a id="l00475" name="l00475"></a><span class="lineno">  475</span></div>
<div class="line"><a id="l00489" name="l00489"></a><span class="lineno"><a class="line" href="group__extended.html#ga7d862c2affd5790381da14eb102a364d">  489</a></span><span class="keywordtype">void</span> <a class="code hl_function" href="group__extended.html#ga7d862c2affd5790381da14eb102a364d">mi_process_info</a>(<span class="keywordtype">size_t</span>* elapsed_msecs, <span class="keywordtype">size_t</span>* user_msecs, <span class="keywordtype">size_t</span>* system_msecs, <span class="keywordtype">size_t</span>* current_rss, <span class="keywordtype">size_t</span>* peak_rss, <span class="keywordtype">size_t</span>* current_commit, <span class="keywordtype">size_t</span>* peak_commit, <span class="keywordtype">size_t</span>* page_faults);</div>
<div class="line"><a id="l00490" name="l00490"></a><span class="lineno">  490</span></div>
<div class="line"><a id="l00495" name="l00495"></a><span class="lineno"><a class="line" href="group__extended.html#gad7439207f8f71fb6c382a9ea20b997e7">  495</a></span><span class="keywordtype">void</span> <a class="code hl_function" href="group__extended.html#gad7439207f8f71fb6c382a9ea20b997e7">mi_debug_show_arenas</a>(<span class="keywordtype">bool</span> show_inuse, <span class="keywordtype">bool</span> show_abandoned, <span class="keywordtype">bool</span> show_purge);</div>
<div class="line"><a id="l00496" name="l00496"></a><span class="lineno">  496</span></div>
<div class="line"><a id="l00499" name="l00499"></a><span class="lineno"><a class="line" href="group__extended.html#ga99fe38650d0b02e0e0f89ee024db91d3">  499</a></span><span class="keyword">typedef</span> <span class="keywordtype">int</span> <a class="code hl_typedef" href="group__extended.html#ga99fe38650d0b02e0e0f89ee024db91d3">mi_arena_id_t</a>;</div>
<div class="line"><a id="l00500" name="l00500"></a><span class="lineno">  500</span></div>
<div class="line"><a id="l00505" name="l00505"></a><span class="lineno"><a class="line" href="group__extended.html#ga9a25a00a22151619a0be91a10af7787f">  505</a></span><span class="keywordtype">void</span>* <a class="code hl_function" href="group__extended.html#ga9a25a00a22151619a0be91a10af7787f">mi_arena_area</a>(<a class="code hl_typedef" href="group__extended.html#ga99fe38650d0b02e0e0f89ee024db91d3">mi_arena_id_t</a> arena_id, <span class="keywordtype">size_t</span>* size);</div>
<div class="line"><a id="l00506" name="l00506"></a><span class="lineno">  506</span></div>
<div class="line"><a id="l00514" name="l00514"></a><span class="lineno"><a class="line" href="group__extended.html#ga591aab1c2bc2ca920e33f0f9f9cb5c52">  514</a></span><span class="keywordtype">int</span>   <a class="code hl_function" href="group__extended.html#ga591aab1c2bc2ca920e33f0f9f9cb5c52">mi_reserve_huge_os_pages_at_ex</a>(<span class="keywordtype">size_t</span> pages, <span class="keywordtype">int</span> numa_node, <span class="keywordtype">size_t</span> timeout_msecs, <span class="keywordtype">bool</span> exclusive, <a class="code hl_typedef" href="group__extended.html#ga99fe38650d0b02e0e0f89ee024db91d3">mi_arena_id_t</a>* arena_id);</div>
<div class="line"><a id="l00515" name="l00515"></a><span class="lineno">  515</span></div>
<div class="line"><a id="l00523" name="l00523"></a><span class="lineno"><a class="line" href="group__extended.html#ga32f519797fd9a81acb4f52d36e6d751b">  523</a></span><span class="keywordtype">int</span>   <a class="code hl_function" href="group__extended.html#ga32f519797fd9a81acb4f52d36e6d751b">mi_reserve_os_memory_ex</a>(<span class="keywordtype">size_t</span> size, <span class="keywordtype">bool</span> commit, <span class="keywordtype">bool</span> allow_large, <span class="keywordtype">bool</span> exclusive, <a class="code hl_typedef" href="group__extended.html#ga99fe38650d0b02e0e0f89ee024db91d3">mi_arena_id_t</a>* arena_id);</div>
<div class="line"><a id="l00524" name="l00524"></a><span class="lineno">  524</span></div>
<div class="line"><a id="l00535" name="l00535"></a><span class="lineno"><a class="line" href="group__extended.html#ga41ce8525d77bbb60f618fa1029994f6e">  535</a></span><span class="keywordtype">bool</span>  <a class="code hl_function" href="group__extended.html#ga41ce8525d77bbb60f618fa1029994f6e">mi_manage_os_memory_ex</a>(<span class="keywordtype">void</span>* start, <span class="keywordtype">size_t</span> size, <span class="keywordtype">bool</span> is_committed, <span class="keywordtype">bool</span> is_large, <span class="keywordtype">bool</span> is_zero, <span class="keywordtype">int</span> numa_node, <span class="keywordtype">bool</span> exclusive, <a class="code hl_typedef" href="group__extended.html#ga99fe38650d0b02e0e0f89ee024db91d3">mi_arena_id_t</a>* arena_id);</div>
<div class="line"><a id="l00536" name="l00536"></a><span class="lineno">  536</span></div>
<div class="line"><a id="l00540" name="l00540"></a><span class="lineno"><a class="line" href="group__extended.html#gaaf2d9976576d5efd5544be12848af949">  540</a></span><a class="code hl_typedef" href="group__heap.html#ga34a47cde5a5b38c29f1aa3c5e76943c2">mi_heap_t</a>* <a class="code hl_function" href="group__extended.html#gaaf2d9976576d5efd5544be12848af949">mi_heap_new_in_arena</a>(<a class="code hl_typedef" href="group__extended.html#ga99fe38650d0b02e0e0f89ee024db91d3">mi_arena_id_t</a> arena_id);</div>
<div class="line"><a id="l00541" name="l00541"></a><span class="lineno">  541</span></div>
<div class="line"><a id="l00552" name="l00552"></a><span class="lineno"><a class="line" href="group__extended.html#ga3ae360583f4351aa5267ee7e43008faf">  552</a></span><a class="code hl_typedef" href="group__heap.html#ga34a47cde5a5b38c29f1aa3c5e76943c2">mi_heap_t</a>* <a class="code hl_function" href="group__extended.html#ga3ae360583f4351aa5267ee7e43008faf">mi_heap_new_ex</a>(<span class="keywordtype">int</span> heap_tag, <span class="keywordtype">bool</span> allow_destroy, <a class="code hl_typedef" href="group__extended.html#ga99fe38650d0b02e0e0f89ee024db91d3">mi_arena_id_t</a> arena_id);</div>
<div class="line"><a id="l00553" name="l00553"></a><span class="lineno">  553</span></div>
<div class="line"><a id="l00557" name="l00557"></a><span class="lineno"><a class="line" href="group__extended.html#ga8c0bcd1fee27c7641e9c3c0d991b3b7d">  557</a></span><span class="keyword">typedef</span> <span class="keywordtype">void</span>* <a class="code hl_typedef" href="group__extended.html#ga8c0bcd1fee27c7641e9c3c0d991b3b7d">mi_subproc_id_t</a>;</div>
<div class="line"><a id="l00558" name="l00558"></a><span class="lineno">  558</span></div>
<div class="line"><a id="l00560" name="l00560"></a><span class="lineno"><a class="line" href="group__extended.html#ga2ecba0d7ebdc99e71bb985c4a1609806">  560</a></span><a class="code hl_typedef" href="group__extended.html#ga8c0bcd1fee27c7641e9c3c0d991b3b7d">mi_subproc_id_t</a> <a class="code hl_function" href="group__extended.html#ga2ecba0d7ebdc99e71bb985c4a1609806">mi_subproc_main</a>(<span class="keywordtype">void</span>);</div>
<div class="line"><a id="l00561" name="l00561"></a><span class="lineno">  561</span></div>
<div class="line"><a id="l00564" name="l00564"></a><span class="lineno"><a class="line" href="group__extended.html#ga8068cac328e41fa2170faef707315243">  564</a></span><a class="code hl_typedef" href="group__extended.html#ga8c0bcd1fee27c7641e9c3c0d991b3b7d">mi_subproc_id_t</a> <a class="code hl_function" href="group__extended.html#ga8068cac328e41fa2170faef707315243">mi_subproc_new</a>(<span class="keywordtype">void</span>);</div>
<div class="line"><a id="l00565" name="l00565"></a><span class="lineno">  565</span></div>
<div class="line"><a id="l00569" name="l00569"></a><span class="lineno"><a class="line" href="group__extended.html#gaa7d263e9429bac9ac8345c9d25de610e">  569</a></span><span class="keywordtype">void</span> <a class="code hl_function" href="group__extended.html#gaa7d263e9429bac9ac8345c9d25de610e">mi_subproc_delete</a>(<a class="code hl_typedef" href="group__extended.html#ga8c0bcd1fee27c7641e9c3c0d991b3b7d">mi_subproc_id_t</a> subproc);</div>
<div class="line"><a id="l00570" name="l00570"></a><span class="lineno">  570</span></div>
<div class="line"><a id="l00573" name="l00573"></a><span class="lineno"><a class="line" href="group__extended.html#gadbc53414eb68b275588ec001ce1ddc7c">  573</a></span><span class="keywordtype">void</span> <a class="code hl_function" href="group__extended.html#gadbc53414eb68b275588ec001ce1ddc7c">mi_subproc_add_current_thread</a>(<a class="code hl_typedef" href="group__extended.html#ga8c0bcd1fee27c7641e9c3c0d991b3b7d">mi_subproc_id_t</a> subproc);</div>
<div class="line"><a id="l00574" name="l00574"></a><span class="lineno">  574</span> </div>
<div class="line"><a id="l00575" name="l00575"></a><span class="lineno">  575</span></div>
<div class="line"><a id="l00577" name="l00577"></a><span class="lineno">  577</span> </div>
<div class="line"><a id="l00578" name="l00578"></a><span class="lineno">  578</span><span class="comment">// ------------------------------------------------------</span></div>
<div class="line"><a id="l00579" name="l00579"></a><span class="lineno">  579</span><span class="comment">// Aligned allocation</span></div>
<div class="line"><a id="l00580" name="l00580"></a><span class="lineno">  580</span><span class="comment">// ------------------------------------------------------</span></div>
<div class="line"><a id="l00581" name="l00581"></a><span class="lineno">  581</span></div>
<div class="line"><a id="l00589" name="l00589"></a><span class="lineno">  589</span></div>
<div class="line"><a id="l00607" name="l00607"></a><span class="lineno"><a class="line" href="group__aligned.html#ga69578ff1a98ca16e1dcd02c0995cd65c">  607</a></span><span class="keywordtype">void</span>* <a class="code hl_function" href="group__aligned.html#ga69578ff1a98ca16e1dcd02c0995cd65c">mi_malloc_aligned</a>(<span class="keywordtype">size_t</span> size, <span class="keywordtype">size_t</span> alignment);</div>
<div class="line"><a id="l00608" name="l00608"></a><span class="lineno"><a class="line" href="group__aligned.html#gaac7d0beb782f9b9ac31f47492b130f82">  608</a></span><span class="keywordtype">void</span>* <a class="code hl_function" href="group__aligned.html#gaac7d0beb782f9b9ac31f47492b130f82">mi_zalloc_aligned</a>(<span class="keywordtype">size_t</span> size, <span class="keywordtype">size_t</span> alignment);</div>
<div class="line"><a id="l00609" name="l00609"></a><span class="lineno"><a class="line" href="group__aligned.html#ga424ef386fb1f9f8e0a86ab53f16eaaf1">  609</a></span><span class="keywordtype">void</span>* <a class="code hl_function" href="group__aligned.html#ga424ef386fb1f9f8e0a86ab53f16eaaf1">mi_calloc_aligned</a>(<span class="keywordtype">size_t</span> count, <span class="keywordtype">size_t</span> size, <span class="keywordtype">size_t</span> alignment);</div>
<div class="line"><a id="l00610" name="l00610"></a><span class="lineno"><a class="line" href="group__aligned.html#ga5d7a46d054b4d7abe9d8d2474add2edf">  610</a></span><span class="keywordtype">void</span>* <a class="code hl_function" href="group__aligned.html#ga5d7a46d054b4d7abe9d8d2474add2edf">mi_realloc_aligned</a>(<span class="keywordtype">void</span>* p, <span class="keywordtype">size_t</span> newsize, <span class="keywordtype">size_t</span> alignment);</div>
<div class="line"><a id="l00611" name="l00611"></a><span class="lineno">  611</span></div>
<div class="line"><a id="l00623" name="l00623"></a><span class="lineno"><a class="line" href="group__aligned.html#ga2022f71b95a7cd6cce1b6e07752ae8ca">  623</a></span><span class="keywordtype">void</span>* <a class="code hl_function" href="group__aligned.html#ga2022f71b95a7cd6cce1b6e07752ae8ca">mi_malloc_aligned_at</a>(<span class="keywordtype">size_t</span> size, <span class="keywordtype">size_t</span> alignment, <span class="keywordtype">size_t</span> offset);</div>
<div class="line"><a id="l00624" name="l00624"></a><span class="lineno"><a class="line" href="group__aligned.html#ga7c1778805ce50ebbf02ccbd5e39d5dba">  624</a></span><span class="keywordtype">void</span>* <a class="code hl_function" href="group__aligned.html#ga7c1778805ce50ebbf02ccbd5e39d5dba">mi_zalloc_aligned_at</a>(<span class="keywordtype">size_t</span> size, <span class="keywordtype">size_t</span> alignment, <span class="keywordtype">size_t</span> offset);</div>
<div class="line"><a id="l00625" name="l00625"></a><span class="lineno"><a class="line" href="group__aligned.html#ga977f96bd2c5c141bcd70e6685c90d6c3">  625</a></span><span class="keywordtype">void</span>* <a class="code hl_function" href="group__aligned.html#ga977f96bd2c5c141bcd70e6685c90d6c3">mi_calloc_aligned_at</a>(<span class="keywordtype">size_t</span> count, <span class="keywordtype">size_t</span> size, <span class="keywordtype">size_t</span> alignment, <span class="keywordtype">size_t</span> offset);</div>
<div class="line"><a id="l00626" name="l00626"></a><span class="lineno"><a class="line" href="group__aligned.html#gad06dcf2bb8faadb2c8ea61ee5d24bbf6">  626</a></span><span class="keywordtype">void</span>* <a class="code hl_function" href="group__aligned.html#gad06dcf2bb8faadb2c8ea61ee5d24bbf6">mi_realloc_aligned_at</a>(<span class="keywordtype">void</span>* p, <span class="keywordtype">size_t</span> newsize, <span class="keywordtype">size_t</span> alignment, <span class="keywordtype">size_t</span> offset);</div>
<div class="line"><a id="l00627" name="l00627"></a><span class="lineno">  627</span></div>
<div class="line"><a id="l00629" name="l00629"></a><span class="lineno">  629</span></div>
<div class="line"><a id="l00635" name="l00635"></a><span class="lineno">  635</span></div>
<div class="line"><a id="l00640" name="l00640"></a><span class="lineno">  640</span><span class="keyword">struct </span>mi_heap_s;</div>
<div class="line"><a id="l00641" name="l00641"></a><span class="lineno">  641</span></div>
<div class="line"><a id="l00646" name="l00646"></a><span class="lineno"><a class="line" href="group__heap.html#ga34a47cde5a5b38c29f1aa3c5e76943c2">  646</a></span><span class="keyword">typedef</span> <span class="keyword">struct </span>mi_heap_s <a class="code hl_typedef" href="group__heap.html#ga34a47cde5a5b38c29f1aa3c5e76943c2">mi_heap_t</a>;</div>
<div class="line"><a id="l00647" name="l00647"></a><span class="lineno">  647</span></div>
<div class="line"><a id="l00649" name="l00649"></a><span class="lineno"><a class="line" href="group__heap.html#gaa718bb226ec0546ba6d1b6cb32179f3a">  649</a></span><a class="code hl_typedef" href="group__heap.html#ga34a47cde5a5b38c29f1aa3c5e76943c2">mi_heap_t</a>* <a class="code hl_function" href="group__heap.html#gaa718bb226ec0546ba6d1b6cb32179f3a">mi_heap_new</a>();</div>
<div class="line"><a id="l00650" name="l00650"></a><span class="lineno">  650</span></div>
<div class="line"><a id="l00658" name="l00658"></a><span class="lineno"><a class="line" href="group__heap.html#ga2ab1af8d438819b55319c7ef51d1e409">  658</a></span><span class="keywordtype">void</span> <a class="code hl_function" href="group__heap.html#ga2ab1af8d438819b55319c7ef51d1e409">mi_heap_delete</a>(<a class="code hl_typedef" href="group__heap.html#ga34a47cde5a5b38c29f1aa3c5e76943c2">mi_heap_t</a>* heap);</div>
<div class="line"><a id="l00659" name="l00659"></a><span class="lineno">  659</span></div>
<div class="line"><a id="l00667" name="l00667"></a><span class="lineno"><a class="line" href="group__heap.html#ga9f9c0844edb9717f4feacd79116b8e0d">  667</a></span><span class="keywordtype">void</span> <a class="code hl_function" href="group__heap.html#ga9f9c0844edb9717f4feacd79116b8e0d">mi_heap_destroy</a>(<a class="code hl_typedef" href="group__heap.html#ga34a47cde5a5b38c29f1aa3c5e76943c2">mi_heap_t</a>* heap);</div>
<div class="line"><a id="l00668" name="l00668"></a><span class="lineno">  668</span></div>
<div class="line"><a id="l00672" name="l00672"></a><span class="lineno"><a class="line" href="group__heap.html#ga349b677dec7da5eacdbc7a385bd62a4a">  672</a></span><a class="code hl_typedef" href="group__heap.html#ga34a47cde5a5b38c29f1aa3c5e76943c2">mi_heap_t</a>* <a class="code hl_function" href="group__heap.html#ga349b677dec7da5eacdbc7a385bd62a4a">mi_heap_set_default</a>(<a class="code hl_typedef" href="group__heap.html#ga34a47cde5a5b38c29f1aa3c5e76943c2">mi_heap_t</a>* heap);</div>
<div class="line"><a id="l00673" name="l00673"></a><span class="lineno">  673</span></div>
<div class="line"><a id="l00676" name="l00676"></a><span class="lineno"><a class="line" href="group__heap.html#ga14c667a6e2c5d28762d8cb7d4e057909">  676</a></span><a class="code hl_typedef" href="group__heap.html#ga34a47cde5a5b38c29f1aa3c5e76943c2">mi_heap_t</a>* <a class="code hl_function" href="group__heap.html#ga14c667a6e2c5d28762d8cb7d4e057909">mi_heap_get_default</a>();</div>
<div class="line"><a id="l00677" name="l00677"></a><span class="lineno">  677</span></div>
<div class="line"><a id="l00683" name="l00683"></a><span class="lineno"><a class="line" href="group__heap.html#gac6ac9f0e7be9ab4ff70acfc8dad1235a">  683</a></span><a class="code hl_typedef" href="group__heap.html#ga34a47cde5a5b38c29f1aa3c5e76943c2">mi_heap_t</a>* <a class="code hl_function" href="group__heap.html#gac6ac9f0e7be9ab4ff70acfc8dad1235a">mi_heap_get_backing</a>();</div>
<div class="line"><a id="l00684" name="l00684"></a><span class="lineno">  684</span></div>
<div class="line"><a id="l00686" name="l00686"></a><span class="lineno"><a class="line" href="group__heap.html#ga7922f7495cde30b1984d0e6072419298">  686</a></span><span class="keywordtype">void</span> <a class="code hl_function" href="group__heap.html#ga7922f7495cde30b1984d0e6072419298">mi_heap_collect</a>(<a class="code hl_typedef" href="group__heap.html#ga34a47cde5a5b38c29f1aa3c5e76943c2">mi_heap_t</a>* heap, <span class="keywordtype">bool</span> force);</div>
<div class="line"><a id="l00687" name="l00687"></a><span class="lineno">  687</span></div>
<div class="line"><a id="l00690" name="l00690"></a><span class="lineno"><a class="line" href="group__heap.html#gab374e206c7034e0d899fb934e4f4a863">  690</a></span><span class="keywordtype">void</span>* <a class="code hl_function" href="group__heap.html#gab374e206c7034e0d899fb934e4f4a863">mi_heap_malloc</a>(<a class="code hl_typedef" href="group__heap.html#ga34a47cde5a5b38c29f1aa3c5e76943c2">mi_heap_t</a>* heap, <span class="keywordtype">size_t</span> size);</div>
<div class="line"><a id="l00691" name="l00691"></a><span class="lineno">  691</span></div>
<div class="line"><a id="l00695" name="l00695"></a><span class="lineno"><a class="line" href="group__heap.html#ga012c5c8abe22b10043de39ff95909541">  695</a></span><span class="keywordtype">void</span>* <a class="code hl_function" href="group__heap.html#ga012c5c8abe22b10043de39ff95909541">mi_heap_malloc_small</a>(<a class="code hl_typedef" href="group__heap.html#ga34a47cde5a5b38c29f1aa3c5e76943c2">mi_heap_t</a>* heap, <span class="keywordtype">size_t</span> size);</div>
<div class="line"><a id="l00696" name="l00696"></a><span class="lineno">  696</span></div>
<div class="line"><a id="l00699" name="l00699"></a><span class="lineno"><a class="line" href="group__heap.html#gabebc796399619d964d8db77aa835e8c1">  699</a></span><span class="keywordtype">void</span>* <a class="code hl_function" href="group__heap.html#gabebc796399619d964d8db77aa835e8c1">mi_heap_zalloc</a>(<a class="code hl_typedef" href="group__heap.html#ga34a47cde5a5b38c29f1aa3c5e76943c2">mi_heap_t</a>* heap, <span class="keywordtype">size_t</span> size);</div>
<div class="line"><a id="l00700" name="l00700"></a><span class="lineno">  700</span></div>
<div class="line"><a id="l00703" name="l00703"></a><span class="lineno"><a class="line" href="group__heap.html#gac0098aaf231d3e9586c73136d5df95da">  703</a></span><span class="keywordtype">void</span>* <a class="code hl_function" href="group__heap.html#gac0098aaf231d3e9586c73136d5df95da">mi_heap_calloc</a>(<a class="code hl_typedef" href="group__heap.html#ga34a47cde5a5b38c29f1aa3c5e76943c2">mi_heap_t</a>* heap, <span class="keywordtype">size_t</span> count, <span class="keywordtype">size_t</span> size);</div>
<div class="line"><a id="l00704" name="l00704"></a><span class="lineno">  704</span></div>
<div class="line"><a id="l00707" name="l00707"></a><span class="lineno"><a class="line" href="group__heap.html#gab0f755c0b21c387fe8e9024200faa372">  707</a></span><span class="keywordtype">void</span>* <a class="code hl_function" href="group__heap.html#gab0f755c0b21c387fe8e9024200faa372">mi_heap_mallocn</a>(<a class="code hl_typedef" href="group__heap.html#ga34a47cde5a5b38c29f1aa3c5e76943c2">mi_heap_t</a>* heap, <span class="keywordtype">size_t</span> count, <span class="keywordtype">size_t</span> size);</div>
<div class="line"><a id="l00708" name="l00708"></a><span class="lineno">  708</span></div>
<div class="line"><a id="l00711" name="l00711"></a><span class="lineno"><a class="line" href="group__heap.html#ga5754e09ccc51dd6bc73885bb6ea21b7a">  711</a></span><span class="keywordtype">char</span>* <a class="code hl_function" href="group__heap.html#ga5754e09ccc51dd6bc73885bb6ea21b7a">mi_heap_strdup</a>(<a class="code hl_typedef" href="group__heap.html#ga34a47cde5a5b38c29f1aa3c5e76943c2">mi_heap_t</a>* heap, <span class="keyword">const</span> <span class="keywordtype">char</span>* s);</div>
<div class="line"><a id="l00712" name="l00712"></a><span class="lineno">  712</span></div>
<div class="line"><a id="l00715" name="l00715"></a><span class="lineno"><a class="line" href="group__heap.html#gad224df78f1fbee942df8adf023e12cf3">  715</a></span><span class="keywordtype">char</span>* <a class="code hl_function" href="group__heap.html#gad224df78f1fbee942df8adf023e12cf3">mi_heap_strndup</a>(<a class="code hl_typedef" href="group__heap.html#ga34a47cde5a5b38c29f1aa3c5e76943c2">mi_heap_t</a>* heap, <span class="keyword">const</span> <span class="keywordtype">char</span>* s, <span class="keywordtype">size_t</span> n);</div>
<div class="line"><a id="l00716" name="l00716"></a><span class="lineno">  716</span></div>
<div class="line"><a id="l00719" name="l00719"></a><span class="lineno"><a class="line" href="group__heap.html#ga55545a3ec6da29c5b4f62e540ecac1e2">  719</a></span><span class="keywordtype">char</span>* <a class="code hl_function" href="group__heap.html#ga55545a3ec6da29c5b4f62e540ecac1e2">mi_heap_realpath</a>(<a class="code hl_typedef" href="group__heap.html#ga34a47cde5a5b38c29f1aa3c5e76943c2">mi_heap_t</a>* heap, <span class="keyword">const</span> <span class="keywordtype">char</span>* fname, <span class="keywordtype">char</span>* resolved_name);</div>
<div class="line"><a id="l00720" name="l00720"></a><span class="lineno">  720</span> </div>
<div class="line"><a id="l00721" name="l00721"></a><span class="lineno"><a class="line" href="group__heap.html#gac5252d6a2e510bd349e4fcb452e6a93a">  721</a></span><span class="keywordtype">void</span>* <a class="code hl_function" href="group__heap.html#gac5252d6a2e510bd349e4fcb452e6a93a">mi_heap_realloc</a>(<a class="code hl_typedef" href="group__heap.html#ga34a47cde5a5b38c29f1aa3c5e76943c2">mi_heap_t</a>* heap, <span class="keywordtype">void</span>* p, <span class="keywordtype">size_t</span> newsize);</div>
<div class="line"><a id="l00722" name="l00722"></a><span class="lineno"><a class="line" href="group__heap.html#gaccf7bfe10ce510a000d3547d9cf7fa29">  722</a></span><span class="keywordtype">void</span>* <a class="code hl_function" href="group__heap.html#gaccf7bfe10ce510a000d3547d9cf7fa29">mi_heap_reallocn</a>(<a class="code hl_typedef" href="group__heap.html#ga34a47cde5a5b38c29f1aa3c5e76943c2">mi_heap_t</a>* heap, <span class="keywordtype">void</span>* p, <span class="keywordtype">size_t</span> count, <span class="keywordtype">size_t</span> size);</div>
<div class="line"><a id="l00723" name="l00723"></a><span class="lineno"><a class="line" href="group__heap.html#gae7cd171425bee04c683c65a3701f0b4a">  723</a></span><span class="keywordtype">void</span>* <a class="code hl_function" href="group__heap.html#gae7cd171425bee04c683c65a3701f0b4a">mi_heap_reallocf</a>(<a class="code hl_typedef" href="group__heap.html#ga34a47cde5a5b38c29f1aa3c5e76943c2">mi_heap_t</a>* heap, <span class="keywordtype">void</span>* p, <span class="keywordtype">size_t</span> newsize);</div>
<div class="line"><a id="l00724" name="l00724"></a><span class="lineno">  724</span> </div>
<div class="line"><a id="l00725" name="l00725"></a><span class="lineno"><a class="line" href="group__heap.html#ga33f4f05b7fea7af2113c62a4bf882cc5">  725</a></span><span class="keywordtype">void</span>* <a class="code hl_function" href="group__heap.html#ga33f4f05b7fea7af2113c62a4bf882cc5">mi_heap_malloc_aligned</a>(<a class="code hl_typedef" href="group__heap.html#ga34a47cde5a5b38c29f1aa3c5e76943c2">mi_heap_t</a>* heap, <span class="keywordtype">size_t</span> size, <span class="keywordtype">size_t</span> alignment);</div>
<div class="line"><a id="l00726" name="l00726"></a><span class="lineno"><a class="line" href="group__heap.html#gae7ffc045c3996497a7f3a5f6fe7b8aaa">  726</a></span><span class="keywordtype">void</span>* <a class="code hl_function" href="group__heap.html#gae7ffc045c3996497a7f3a5f6fe7b8aaa">mi_heap_malloc_aligned_at</a>(<a class="code hl_typedef" href="group__heap.html#ga34a47cde5a5b38c29f1aa3c5e76943c2">mi_heap_t</a>* heap, <span class="keywordtype">size_t</span> size, <span class="keywordtype">size_t</span> alignment, <span class="keywordtype">size_t</span> offset);</div>
<div class="line"><a id="l00727" name="l00727"></a><span class="lineno"><a class="line" href="group__heap.html#ga6466bde8b5712aa34e081a8317f9f471">  727</a></span><span class="keywordtype">void</span>* <a class="code hl_function" href="group__heap.html#ga6466bde8b5712aa34e081a8317f9f471">mi_heap_zalloc_aligned</a>(<a class="code hl_typedef" href="group__heap.html#ga34a47cde5a5b38c29f1aa3c5e76943c2">mi_heap_t</a>* heap, <span class="keywordtype">size_t</span> size, <span class="keywordtype">size_t</span> alignment);</div>
<div class="line"><a id="l00728" name="l00728"></a><span class="lineno"><a class="line" href="group__heap.html#ga484e3d01cd174f78c7e53370e5a7c819">  728</a></span><span class="keywordtype">void</span>* <a class="code hl_function" href="group__heap.html#ga484e3d01cd174f78c7e53370e5a7c819">mi_heap_zalloc_aligned_at</a>(<a class="code hl_typedef" href="group__heap.html#ga34a47cde5a5b38c29f1aa3c5e76943c2">mi_heap_t</a>* heap, <span class="keywordtype">size_t</span> size, <span class="keywordtype">size_t</span> alignment, <span class="keywordtype">size_t</span> offset);</div>
<div class="line"><a id="l00729" name="l00729"></a><span class="lineno"><a class="line" href="group__heap.html#gacafcc26df827c7a7de5e850217566108">  729</a></span><span class="keywordtype">void</span>* <a class="code hl_function" href="group__heap.html#gacafcc26df827c7a7de5e850217566108">mi_heap_calloc_aligned</a>(<a class="code hl_typedef" href="group__heap.html#ga34a47cde5a5b38c29f1aa3c5e76943c2">mi_heap_t</a>* heap, <span class="keywordtype">size_t</span> count, <span class="keywordtype">size_t</span> size, <span class="keywordtype">size_t</span> alignment);</div>
<div class="line"><a id="l00730" name="l00730"></a><span class="lineno"><a class="line" href="group__heap.html#gaa42ec2079989c4374f2c331d9b35f4e4">  730</a></span><span class="keywordtype">void</span>* <a class="code hl_function" href="group__heap.html#gaa42ec2079989c4374f2c331d9b35f4e4">mi_heap_calloc_aligned_at</a>(<a class="code hl_typedef" href="group__heap.html#ga34a47cde5a5b38c29f1aa3c5e76943c2">mi_heap_t</a>* heap, <span class="keywordtype">size_t</span> count, <span class="keywordtype">size_t</span> size, <span class="keywordtype">size_t</span> alignment, <span class="keywordtype">size_t</span> offset);</div>
<div class="line"><a id="l00731" name="l00731"></a><span class="lineno"><a class="line" href="group__heap.html#gaccf8c249872f30bf1c2493a09197d734">  731</a></span><span class="keywordtype">void</span>* <a class="code hl_function" href="group__heap.html#gaccf8c249872f30bf1c2493a09197d734">mi_heap_realloc_aligned</a>(<a class="code hl_typedef" href="group__heap.html#ga34a47cde5a5b38c29f1aa3c5e76943c2">mi_heap_t</a>* heap, <span class="keywordtype">void</span>* p, <span class="keywordtype">size_t</span> newsize, <span class="keywordtype">size_t</span> alignment);</div>
<div class="line"><a id="l00732" name="l00732"></a><span class="lineno"><a class="line" href="group__heap.html#ga6df988a7219d5707f010d5f3eb0dc3f5">  732</a></span><span class="keywordtype">void</span>* <a class="code hl_function" href="group__heap.html#ga6df988a7219d5707f010d5f3eb0dc3f5">mi_heap_realloc_aligned_at</a>(<a class="code hl_typedef" href="group__heap.html#ga34a47cde5a5b38c29f1aa3c5e76943c2">mi_heap_t</a>* heap, <span class="keywordtype">void</span>* p, <span class="keywordtype">size_t</span> newsize, <span class="keywordtype">size_t</span> alignment, <span class="keywordtype">size_t</span> offset);</div>
<div class="line"><a id="l00733" name="l00733"></a><span class="lineno">  733</span></div>
<div class="line"><a id="l00735" name="l00735"></a><span class="lineno">  735</span> </div>
<div class="line"><a id="l00736" name="l00736"></a><span class="lineno">  736</span></div>
<div class="line"><a id="l00745" name="l00745"></a><span class="lineno">  745</span> </div>
<div class="line"><a id="l00746" name="l00746"></a><span class="lineno"><a class="line" href="group__zeroinit.html#gadfd34cd7b4f2bbda7ae06367a6360756">  746</a></span><span class="keywordtype">void</span>* <a class="code hl_function" href="group__zeroinit.html#gadfd34cd7b4f2bbda7ae06367a6360756">mi_rezalloc</a>(<span class="keywordtype">void</span>* p, <span class="keywordtype">size_t</span> newsize);</div>
<div class="line"><a id="l00747" name="l00747"></a><span class="lineno">  747</span><span class="keywordtype">void</span>* <a class="code hl_function" href="group__malloc.html#ga23a0fbb452b5dce8e31fab1a1958cacc">mi_recalloc</a>(<span class="keywordtype">void</span>* p, <span class="keywordtype">size_t</span> newcount, <span class="keywordtype">size_t</span> size) ;</div>
<div class="line"><a id="l00748" name="l00748"></a><span class="lineno">  748</span> </div>
<div class="line"><a id="l00749" name="l00749"></a><span class="lineno"><a class="line" href="group__zeroinit.html#ga4d02404fe1e7db00beb65f185e012caa">  749</a></span><span class="keywordtype">void</span>* <a class="code hl_function" href="group__zeroinit.html#ga4d02404fe1e7db00beb65f185e012caa">mi_rezalloc_aligned</a>(<span class="keywordtype">void</span>* p, <span class="keywordtype">size_t</span> newsize, <span class="keywordtype">size_t</span> alignment);</div>
<div class="line"><a id="l00750" name="l00750"></a><span class="lineno"><a class="line" href="group__zeroinit.html#ga6843a88285bbfcc3bdfccc60aafd1270">  750</a></span><span class="keywordtype">void</span>* <a class="code hl_function" href="group__zeroinit.html#ga6843a88285bbfcc3bdfccc60aafd1270">mi_rezalloc_aligned_at</a>(<span class="keywordtype">void</span>* p, <span class="keywordtype">size_t</span> newsize, <span class="keywordtype">size_t</span> alignment, <span class="keywordtype">size_t</span> offset);</div>
<div class="line"><a id="l00751" name="l00751"></a><span class="lineno"><a class="line" href="group__zeroinit.html#ga3e2169b48683aa0ab64f813fd68d839e">  751</a></span><span class="keywordtype">void</span>* <a class="code hl_function" href="group__zeroinit.html#ga3e2169b48683aa0ab64f813fd68d839e">mi_recalloc_aligned</a>(<span class="keywordtype">void</span>* p, <span class="keywordtype">size_t</span> newcount, <span class="keywordtype">size_t</span> size, <span class="keywordtype">size_t</span> alignment);</div>
<div class="line"><a id="l00752" name="l00752"></a><span class="lineno"><a class="line" href="group__zeroinit.html#gaae25e4ddedd4e0fb61b1a8bd5d452750">  752</a></span><span class="keywordtype">void</span>* <a class="code hl_function" href="group__zeroinit.html#gaae25e4ddedd4e0fb61b1a8bd5d452750">mi_recalloc_aligned_at</a>(<span class="keywordtype">void</span>* p, <span class="keywordtype">size_t</span> newcount, <span class="keywordtype">size_t</span> size, <span class="keywordtype">size_t</span> alignment, <span class="keywordtype">size_t</span> offset);</div>
<div class="line"><a id="l00753" name="l00753"></a><span class="lineno">  753</span> </div>
<div class="line"><a id="l00754" name="l00754"></a><span class="lineno"><a class="line" href="group__zeroinit.html#ga8d8b7ebb24b513cd84d1a696048da60d">  754</a></span><span class="keywordtype">void</span>* <a class="code hl_function" href="group__zeroinit.html#ga8d8b7ebb24b513cd84d1a696048da60d">mi_heap_rezalloc</a>(<a class="code hl_typedef" href="group__heap.html#ga34a47cde5a5b38c29f1aa3c5e76943c2">mi_heap_t</a>* heap, <span class="keywordtype">void</span>* p, <span class="keywordtype">size_t</span> newsize);</div>
<div class="line"><a id="l00755" name="l00755"></a><span class="lineno"><a class="line" href="group__zeroinit.html#gad1a0d325d930eeb80f25e3fea37aacde">  755</a></span><span class="keywordtype">void</span>* <a class="code hl_function" href="group__zeroinit.html#gad1a0d325d930eeb80f25e3fea37aacde">mi_heap_recalloc</a>(<a class="code hl_typedef" href="group__heap.html#ga34a47cde5a5b38c29f1aa3c5e76943c2">mi_heap_t</a>* heap, <span class="keywordtype">void</span>* p, <span class="keywordtype">size_t</span> newcount, <span class="keywordtype">size_t</span> size);</div>
<div class="line"><a id="l00756" name="l00756"></a><span class="lineno">  756</span> </div>
<div class="line"><a id="l00757" name="l00757"></a><span class="lineno"><a class="line" href="group__zeroinit.html#ga5129f6dc46ee1613d918820a8a0533a7">  757</a></span><span class="keywordtype">void</span>* <a class="code hl_function" href="group__zeroinit.html#ga5129f6dc46ee1613d918820a8a0533a7">mi_heap_rezalloc_aligned</a>(<a class="code hl_typedef" href="group__heap.html#ga34a47cde5a5b38c29f1aa3c5e76943c2">mi_heap_t</a>* heap, <span class="keywordtype">void</span>* p, <span class="keywordtype">size_t</span> newsize, <span class="keywordtype">size_t</span> alignment);</div>
<div class="line"><a id="l00758" name="l00758"></a><span class="lineno"><a class="line" href="group__zeroinit.html#ga2bafa79c3f98ea74882349d44cffa5d9">  758</a></span><span class="keywordtype">void</span>* <a class="code hl_function" href="group__zeroinit.html#ga2bafa79c3f98ea74882349d44cffa5d9">mi_heap_rezalloc_aligned_at</a>(<a class="code hl_typedef" href="group__heap.html#ga34a47cde5a5b38c29f1aa3c5e76943c2">mi_heap_t</a>* heap, <span class="keywordtype">void</span>* p, <span class="keywordtype">size_t</span> newsize, <span class="keywordtype">size_t</span> alignment, <span class="keywordtype">size_t</span> offset);</div>
<div class="line"><a id="l00759" name="l00759"></a><span class="lineno"><a class="line" href="group__zeroinit.html#ga87ddd674bf1c67237d780d0b9e0f0f32">  759</a></span><span class="keywordtype">void</span>* <a class="code hl_function" href="group__zeroinit.html#ga87ddd674bf1c67237d780d0b9e0f0f32">mi_heap_recalloc_aligned</a>(<a class="code hl_typedef" href="group__heap.html#ga34a47cde5a5b38c29f1aa3c5e76943c2">mi_heap_t</a>* heap, <span class="keywordtype">void</span>* p, <span class="keywordtype">size_t</span> newcount, <span class="keywordtype">size_t</span> size, <span class="keywordtype">size_t</span> alignment);</div>
<div class="line"><a id="l00760" name="l00760"></a><span class="lineno"><a class="line" href="group__zeroinit.html#ga07b5bcbaf00d0d2e598c232982588496">  760</a></span><span class="keywordtype">void</span>* <a class="code hl_function" href="group__zeroinit.html#ga07b5bcbaf00d0d2e598c232982588496">mi_heap_recalloc_aligned_at</a>(<a class="code hl_typedef" href="group__heap.html#ga34a47cde5a5b38c29f1aa3c5e76943c2">mi_heap_t</a>* heap, <span class="keywordtype">void</span>* p, <span class="keywordtype">size_t</span> newcount, <span class="keywordtype">size_t</span> size, <span class="keywordtype">size_t</span> alignment, <span class="keywordtype">size_t</span> offset);</div>
<div class="line"><a id="l00761" name="l00761"></a><span class="lineno">  761</span></div>
<div class="line"><a id="l00763" name="l00763"></a><span class="lineno">  763</span></div>
<div class="line"><a id="l00772" name="l00772"></a><span class="lineno">  772</span></div>
<div class="line"><a id="l00784" name="l00784"></a><span class="lineno"><a class="line" href="group__typed.html#ga0619a62c5fd886f1016030abe91f0557">  784</a></span><span class="preprocessor">#define mi_malloc_tp(tp)        ((tp*)mi_malloc(sizeof(tp)))</span></div>
<div class="line"><a id="l00785" name="l00785"></a><span class="lineno">  785</span></div>
<div class="line"><a id="l00787" name="l00787"></a><span class="lineno"><a class="line" href="group__typed.html#gac77a61bdaf680a803785fe307820b48c">  787</a></span><span class="preprocessor">#define mi_zalloc_tp(tp)        ((tp*)mi_zalloc(sizeof(tp)))</span></div>
<div class="line"><a id="l00788" name="l00788"></a><span class="lineno">  788</span></div>
<div class="line"><a id="l00790" name="l00790"></a><span class="lineno"><a class="line" href="group__typed.html#gae80c47c9d4cab10961fff1a8ac98fc07">  790</a></span><span class="preprocessor">#define mi_calloc_tp(tp,count)      ((tp*)mi_calloc(count,sizeof(tp)))</span></div>
<div class="line"><a id="l00791" name="l00791"></a><span class="lineno">  791</span></div>
<div class="line"><a id="l00793" name="l00793"></a><span class="lineno"><a class="line" href="group__typed.html#gae5cb6e0fafc9f23169c5622e077afe8b">  793</a></span><span class="preprocessor">#define mi_mallocn_tp(tp,count)     ((tp*)mi_mallocn(count,sizeof(tp)))</span></div>
<div class="line"><a id="l00794" name="l00794"></a><span class="lineno">  794</span></div>
<div class="line"><a id="l00796" name="l00796"></a><span class="lineno"><a class="line" href="group__typed.html#ga1158b49a55dfa81f58a4426a7578f523">  796</a></span><span class="preprocessor">#define mi_reallocn_tp(p,tp,count)  ((tp*)mi_reallocn(p,count,sizeof(tp)))</span></div>
<div class="line"><a id="l00797" name="l00797"></a><span class="lineno">  797</span></div>
<div class="line"><a id="l00799" name="l00799"></a><span class="lineno"><a class="line" href="group__typed.html#ga653bcb24ac495bc19940ecd6898f9cd7">  799</a></span><span class="preprocessor">#define mi_heap_malloc_tp(hp,tp)        ((tp*)mi_heap_malloc(hp,sizeof(tp)))</span></div>
<div class="line"><a id="l00800" name="l00800"></a><span class="lineno">  800</span></div>
<div class="line"><a id="l00802" name="l00802"></a><span class="lineno"><a class="line" href="group__typed.html#gad6e87e86e994aa14416ae9b5d4c188fe">  802</a></span><span class="preprocessor">#define mi_heap_zalloc_tp(hp,tp)        ((tp*)mi_heap_zalloc(hp,sizeof(tp)))</span></div>
<div class="line"><a id="l00803" name="l00803"></a><span class="lineno">  803</span></div>
<div class="line"><a id="l00805" name="l00805"></a><span class="lineno"><a class="line" href="group__typed.html#ga4e5d1f1707c90e5f55e023ac5f45fe74">  805</a></span><span class="preprocessor">#define mi_heap_calloc_tp(hp,tp,count)      ((tp*)mi_heap_calloc(hp,count,sizeof(tp)))</span></div>
<div class="line"><a id="l00806" name="l00806"></a><span class="lineno">  806</span></div>
<div class="line"><a id="l00808" name="l00808"></a><span class="lineno"><a class="line" href="group__typed.html#ga6b75cb9c4b9c647661d0924552dc6e83">  808</a></span><span class="preprocessor">#define mi_heap_mallocn_tp(hp,tp,count)     ((tp*)mi_heap_mallocn(hp,count,sizeof(tp)))</span></div>
<div class="line"><a id="l00809" name="l00809"></a><span class="lineno">  809</span></div>
<div class="line"><a id="l00811" name="l00811"></a><span class="lineno"><a class="line" href="group__typed.html#gaf213d5422ec35e7f6caad827c79bc948">  811</a></span><span class="preprocessor">#define mi_heap_reallocn_tp(hp,p,tp,count)  ((tp*)mi_heap_reallocn(p,count,sizeof(tp)))</span></div>
<div class="line"><a id="l00812" name="l00812"></a><span class="lineno">  812</span></div>
<div class="line"><a id="l00814" name="l00814"></a><span class="lineno"><a class="line" href="group__typed.html#ga3e50a1600958fcaf1a7f3560c9174f9e">  814</a></span><span class="preprocessor">#define mi_heap_recalloc_tp(hp,p,tp,count)  ((tp*)mi_heap_recalloc(p,count,sizeof(tp)))</span></div>
<div class="line"><a id="l00815" name="l00815"></a><span class="lineno">  815</span></div>
<div class="line"><a id="l00817" name="l00817"></a><span class="lineno">  817</span></div>
<div class="line"><a id="l00823" name="l00823"></a><span class="lineno">  823</span></div>
<div class="line"><a id="l00830" name="l00830"></a><span class="lineno"><a class="line" href="group__analysis.html#gaa862aa8ed8d57d84cae41fc1022d71af">  830</a></span><span class="keywordtype">bool</span> <a class="code hl_function" href="group__analysis.html#gaa862aa8ed8d57d84cae41fc1022d71af">mi_heap_contains_block</a>(<a class="code hl_typedef" href="group__heap.html#ga34a47cde5a5b38c29f1aa3c5e76943c2">mi_heap_t</a>* heap, <span class="keyword">const</span> <span class="keywordtype">void</span>* p);</div>
<div class="line"><a id="l00831" name="l00831"></a><span class="lineno">  831</span></div>
<div class="line"><a id="l00840" name="l00840"></a><span class="lineno"><a class="line" href="group__analysis.html#ga0d67c1789faaa15ff366c024fcaf6377">  840</a></span><span class="keywordtype">bool</span> <a class="code hl_function" href="group__analysis.html#ga0d67c1789faaa15ff366c024fcaf6377">mi_heap_check_owned</a>(<a class="code hl_typedef" href="group__heap.html#ga34a47cde5a5b38c29f1aa3c5e76943c2">mi_heap_t</a>* heap, <span class="keyword">const</span> <span class="keywordtype">void</span>* p);</div>
<div class="line"><a id="l00841" name="l00841"></a><span class="lineno">  841</span></div>
<div class="line"><a id="l00849" name="l00849"></a><span class="lineno"><a class="line" href="group__analysis.html#ga628c237489c2679af84a4d0d143b3dd5">  849</a></span><span class="keywordtype">bool</span> <a class="code hl_function" href="group__analysis.html#ga628c237489c2679af84a4d0d143b3dd5">mi_check_owned</a>(<span class="keyword">const</span> <span class="keywordtype">void</span>* p);</div>
<div class="line"><a id="l00850" name="l00850"></a><span class="lineno">  850</span></div>
<div class="foldopen" id="foldopen00853" data-start="{" data-end="};">
<div class="line"><a id="l00853" name="l00853"></a><span class="lineno"><a class="line" href="group__analysis.html">  853</a></span><span class="keyword">typedef</span> <span class="keyword">struct </span>mi_heap_area_s {</div>
<div class="line"><a id="l00854" name="l00854"></a><span class="lineno"><a class="line" href="group__analysis.html#ae0085e6e1cf059a4eb7767e30e9991b8">  854</a></span>  <span class="keywordtype">void</span>*  <a class="code hl_variable" href="group__analysis.html#ae0085e6e1cf059a4eb7767e30e9991b8">blocks</a>;      </div>
<div class="line"><a id="l00855" name="l00855"></a><span class="lineno"><a class="line" href="group__analysis.html#ae848a3e6840414891035423948ca0383">  855</a></span>  <span class="keywordtype">size_t</span> <a class="code hl_variable" href="group__analysis.html#ae848a3e6840414891035423948ca0383">reserved</a>;    </div>
<div class="line"><a id="l00856" name="l00856"></a><span class="lineno"><a class="line" href="group__analysis.html#ab47526df656d8837ec3e97f11b83f835">  856</a></span>  <span class="keywordtype">size_t</span> <a class="code hl_variable" href="group__analysis.html#ab47526df656d8837ec3e97f11b83f835">committed</a>;   </div>
<div class="line"><a id="l00857" name="l00857"></a><span class="lineno"><a class="line" href="group__analysis.html#ab820302c5cd0df133eb8e51650a008b4">  857</a></span>  <span class="keywordtype">size_t</span> <a class="code hl_variable" href="group__analysis.html#ab820302c5cd0df133eb8e51650a008b4">used</a>;        </div>
<div class="line"><a id="l00858" name="l00858"></a><span class="lineno"><a class="line" href="group__analysis.html#a332a6c14d736a99699d5453a1cb04b41">  858</a></span>  <span class="keywordtype">size_t</span> <a class="code hl_variable" href="group__analysis.html#a332a6c14d736a99699d5453a1cb04b41">block_size</a>;  </div>
<div class="line"><a id="l00859" name="l00859"></a><span class="lineno"><a class="line" href="group__analysis.html#ab53664e31d7fe2564f8d42041ef75cb3">  859</a></span>  <span class="keywordtype">size_t</span> <a class="code hl_variable" href="group__analysis.html#ab53664e31d7fe2564f8d42041ef75cb3">full_block_size</a>; </div>
<div class="line"><a id="l00860" name="l00860"></a><span class="lineno"><a class="line" href="group__analysis.html#a2b7a0c92ece8daf46b558efc990ebdc1">  860</a></span>  <span class="keywordtype">int</span>    <a class="code hl_variable" href="group__analysis.html#a2b7a0c92ece8daf46b558efc990ebdc1">heap_tag</a>;    </div>
<div class="line"><a id="l00861" name="l00861"></a><span class="lineno">  861</span>} <a class="code hl_struct" href="group__analysis.html#structmi__heap__area__t">mi_heap_area_t</a>;</div>
</div>
<div class="line"><a id="l00862" name="l00862"></a><span class="lineno">  862</span></div>
<div class="line"><a id="l00870" name="l00870"></a><span class="lineno"><a class="line" href="group__analysis.html#ga8255dc9371e6b299d9802a610c4e34ec">  870</a></span><span class="keyword">typedef</span> bool (<a class="code hl_typedef" href="group__analysis.html#ga8255dc9371e6b299d9802a610c4e34ec">mi_block_visit_fun</a>)(<span class="keyword">const</span> <a class="code hl_typedef" href="group__heap.html#ga34a47cde5a5b38c29f1aa3c5e76943c2">mi_heap_t</a>* heap, <span class="keyword">const</span> <a class="code hl_struct" href="group__analysis.html#structmi__heap__area__t">mi_heap_area_t</a>* area, <span class="keywordtype">void</span>* block, <span class="keywordtype">size_t</span> block_size, <span class="keywordtype">void</span>* arg);</div>
<div class="line"><a id="l00871" name="l00871"></a><span class="lineno">  871</span></div>
<div class="line"><a id="l00883" name="l00883"></a><span class="lineno"><a class="line" href="group__analysis.html#ga70c46687dc6e9dc98b232b02646f8bed">  883</a></span><span class="keywordtype">bool</span> <a class="code hl_function" href="group__analysis.html#ga70c46687dc6e9dc98b232b02646f8bed">mi_heap_visit_blocks</a>(<span class="keyword">const</span> <a class="code hl_typedef" href="group__heap.html#ga34a47cde5a5b38c29f1aa3c5e76943c2">mi_heap_t</a>* heap, <span class="keywordtype">bool</span> visit_all_blocks, <a class="code hl_typedef" href="group__analysis.html#ga8255dc9371e6b299d9802a610c4e34ec">mi_block_visit_fun</a>* visitor, <span class="keywordtype">void</span>* arg);</div>
<div class="line"><a id="l00884" name="l00884"></a><span class="lineno">  884</span></div>
<div class="line"><a id="l00900" name="l00900"></a><span class="lineno"><a class="line" href="group__analysis.html#ga6a4865a887b2ec5247854af61562503c">  900</a></span><span class="keywordtype">bool</span> <a class="code hl_function" href="group__analysis.html#ga6a4865a887b2ec5247854af61562503c">mi_abandoned_visit_blocks</a>(<a class="code hl_typedef" href="group__extended.html#ga8c0bcd1fee27c7641e9c3c0d991b3b7d">mi_subproc_id_t</a> subproc_id, <span class="keywordtype">int</span> heap_tag, <span class="keywordtype">bool</span> visit_blocks, <a class="code hl_typedef" href="group__analysis.html#ga8255dc9371e6b299d9802a610c4e34ec">mi_block_visit_fun</a>* visitor, <span class="keywordtype">void</span>* arg);</div>
<div class="line"><a id="l00901" name="l00901"></a><span class="lineno">  901</span></div>
<div class="line"><a id="l00903" name="l00903"></a><span class="lineno">  903</span></div>
<div class="line"><a id="l00909" name="l00909"></a><span class="lineno">  909</span></div>
<div class="foldopen" id="foldopen00911" data-start="{" data-end="};">
<div class="line"><a id="l00911" name="l00911"></a><span class="lineno"><a class="line" href="group__options.html#gafebf7ed116adb38ae5218bc3ce06884c">  911</a></span><span class="keyword">typedef</span> <span class="keyword">enum</span> mi_option_e {</div>
<div class="line"><a id="l00912" name="l00912"></a><span class="lineno">  912</span>  <span class="comment">// stable options</span></div>
<div class="line"><a id="l00913" name="l00913"></a><span class="lineno"><a class="line" href="group__options.html#ggafebf7ed116adb38ae5218bc3ce06884cafbf4822e5c00732c5984b32a032837f0">  913</a></span>  <a class="code hl_enumvalue" href="group__options.html#ggafebf7ed116adb38ae5218bc3ce06884cafbf4822e5c00732c5984b32a032837f0">mi_option_show_errors</a>,  </div>
<div class="line"><a id="l00914" name="l00914"></a><span class="lineno"><a class="line" href="group__options.html#ggafebf7ed116adb38ae5218bc3ce06884ca0957ef73b2550764b4840edf48422fda">  914</a></span>  <a class="code hl_enumvalue" href="group__options.html#ggafebf7ed116adb38ae5218bc3ce06884ca0957ef73b2550764b4840edf48422fda">mi_option_show_stats</a>,   </div>
<div class="line"><a id="l00915" name="l00915"></a><span class="lineno"><a class="line" href="group__options.html#ggafebf7ed116adb38ae5218bc3ce06884ca7c8b7bf5281c581bad64f5daa6442777">  915</a></span>  <a class="code hl_enumvalue" href="group__options.html#ggafebf7ed116adb38ae5218bc3ce06884ca7c8b7bf5281c581bad64f5daa6442777">mi_option_verbose</a>,      </div>
<div class="line"><a id="l00916" name="l00916"></a><span class="lineno"><a class="line" href="group__options.html#ggafebf7ed116adb38ae5218bc3ce06884caec6ecbe29d46a48205ed8823a8a52a6a">  916</a></span>  <a class="code hl_enumvalue" href="group__options.html#ggafebf7ed116adb38ae5218bc3ce06884caec6ecbe29d46a48205ed8823a8a52a6a">mi_option_max_errors</a>,                 </div>
<div class="line"><a id="l00917" name="l00917"></a><span class="lineno"><a class="line" href="group__options.html#ggafebf7ed116adb38ae5218bc3ce06884caf9595921087e942602ee079158762665">  917</a></span>  <a class="code hl_enumvalue" href="group__options.html#ggafebf7ed116adb38ae5218bc3ce06884caf9595921087e942602ee079158762665">mi_option_max_warnings</a>,               </div>
<div class="line"><a id="l00918" name="l00918"></a><span class="lineno">  918</span> </div>
<div class="line"><a id="l00919" name="l00919"></a><span class="lineno">  919</span>  <span class="comment">// advanced options</span></div>
<div class="line"><a id="l00920" name="l00920"></a><span class="lineno"><a class="line" href="group__options.html#ggafebf7ed116adb38ae5218bc3ce06884caca7ed041be3b0b9d0b82432c7bf41af2">  920</a></span>  <a class="code hl_enumvalue" href="group__options.html#ggafebf7ed116adb38ae5218bc3ce06884caca7ed041be3b0b9d0b82432c7bf41af2">mi_option_reserve_huge_os_pages</a>,    </div>
<div class="line"><a id="l00921" name="l00921"></a><span class="lineno"><a class="line" href="group__options.html#ggafebf7ed116adb38ae5218bc3ce06884caa13e7926d4339d2aa6fbf61d4473fd5c">  921</a></span>  <a class="code hl_enumvalue" href="group__options.html#ggafebf7ed116adb38ae5218bc3ce06884caa13e7926d4339d2aa6fbf61d4473fd5c">mi_option_reserve_huge_os_pages_at</a>, </div>
<div class="line"><a id="l00922" name="l00922"></a><span class="lineno"><a class="line" href="group__options.html#ggafebf7ed116adb38ae5218bc3ce06884cafbf4999c828cf79a0fb2de65d23f7333">  922</a></span>  <a class="code hl_enumvalue" href="group__options.html#ggafebf7ed116adb38ae5218bc3ce06884cafbf4999c828cf79a0fb2de65d23f7333">mi_option_reserve_os_memory</a>,        </div>
<div class="line"><a id="l00923" name="l00923"></a><span class="lineno"><a class="line" href="group__options.html#ggafebf7ed116adb38ae5218bc3ce06884ca7cc4804ced69004fa42a9a136a9ba556">  923</a></span>  <a class="code hl_enumvalue" href="group__options.html#ggafebf7ed116adb38ae5218bc3ce06884ca7cc4804ced69004fa42a9a136a9ba556">mi_option_allow_large_os_pages</a>,     </div>
<div class="line"><a id="l00924" name="l00924"></a><span class="lineno"><a class="line" href="group__options.html#ggafebf7ed116adb38ae5218bc3ce06884ca9d15c5e3d2115eef681c17e4dd5ab9a4">  924</a></span>  <a class="code hl_enumvalue" href="group__options.html#ggafebf7ed116adb38ae5218bc3ce06884ca9d15c5e3d2115eef681c17e4dd5ab9a4">mi_option_purge_decommits</a>,          </div>
<div class="line"><a id="l00925" name="l00925"></a><span class="lineno"><a class="line" href="group__options.html#ggafebf7ed116adb38ae5218bc3ce06884cab1c88e23ae290bbeec824038a97959de">  925</a></span>  <a class="code hl_enumvalue" href="group__options.html#ggafebf7ed116adb38ae5218bc3ce06884cab1c88e23ae290bbeec824038a97959de">mi_option_arena_reserve</a>,            </div>
<div class="line"><a id="l00926" name="l00926"></a><span class="lineno"><a class="line" href="group__options.html#ggafebf7ed116adb38ae5218bc3ce06884ca4b74ae2a69e445de6c2361b73c1d14bf">  926</a></span>  <a class="code hl_enumvalue" href="group__options.html#ggafebf7ed116adb38ae5218bc3ce06884ca4b74ae2a69e445de6c2361b73c1d14bf">mi_option_os_tag</a>,                   </div>
<div class="line"><a id="l00927" name="l00927"></a><span class="lineno"><a class="line" href="group__options.html#ggafebf7ed116adb38ae5218bc3ce06884ca8f51df355bf6651db899e6085b54865e">  927</a></span>  <a class="code hl_enumvalue" href="group__options.html#ggafebf7ed116adb38ae5218bc3ce06884ca8f51df355bf6651db899e6085b54865e">mi_option_retry_on_oom</a>,             </div>
<div class="line"><a id="l00928" name="l00928"></a><span class="lineno">  928</span> </div>
<div class="line"><a id="l00929" name="l00929"></a><span class="lineno">  929</span>  <span class="comment">// experimental options</span></div>
<div class="line"><a id="l00930" name="l00930"></a><span class="lineno"><a class="line" href="group__options.html#ggafebf7ed116adb38ae5218bc3ce06884ca1e8de72c93da7ff22d91e1e27b52ac2b">  930</a></span>  <a class="code hl_enumvalue" href="group__options.html#ggafebf7ed116adb38ae5218bc3ce06884ca1e8de72c93da7ff22d91e1e27b52ac2b">mi_option_eager_commit</a>,             </div>
<div class="line"><a id="l00931" name="l00931"></a><span class="lineno"><a class="line" href="group__options.html#ggafebf7ed116adb38ae5218bc3ce06884ca17a190c25be381142d87e0468c4c068c">  931</a></span>  <a class="code hl_enumvalue" href="group__options.html#ggafebf7ed116adb38ae5218bc3ce06884ca17a190c25be381142d87e0468c4c068c">mi_option_eager_commit_delay</a>,       </div>
<div class="line"><a id="l00932" name="l00932"></a><span class="lineno"><a class="line" href="group__options.html#ggafebf7ed116adb38ae5218bc3ce06884cafd0c5ddbc4b59fd8b5216871728167a5">  932</a></span>  <a class="code hl_enumvalue" href="group__options.html#ggafebf7ed116adb38ae5218bc3ce06884cafd0c5ddbc4b59fd8b5216871728167a5">mi_option_arena_eager_commit</a>,       </div>
<div class="line"><a id="l00933" name="l00933"></a><span class="lineno"><a class="line" href="group__options.html#ggafebf7ed116adb38ae5218bc3ce06884ca11e62ed69200a489a5be955582078c0c">  933</a></span>  <a class="code hl_enumvalue" href="group__options.html#ggafebf7ed116adb38ae5218bc3ce06884ca11e62ed69200a489a5be955582078c0c">mi_option_abandoned_page_purge</a>,     </div>
<div class="line"><a id="l00934" name="l00934"></a><span class="lineno"><a class="line" href="group__options.html#ggafebf7ed116adb38ae5218bc3ce06884cadd351e615acd8563529c20a347be7290">  934</a></span>  <a class="code hl_enumvalue" href="group__options.html#ggafebf7ed116adb38ae5218bc3ce06884cadd351e615acd8563529c20a347be7290">mi_option_purge_delay</a>,              </div>
<div class="line"><a id="l00935" name="l00935"></a><span class="lineno"><a class="line" href="group__options.html#ggafebf7ed116adb38ae5218bc3ce06884ca0ac33a18f6b659fcfaf44efb0bab1b74">  935</a></span>  <a class="code hl_enumvalue" href="group__options.html#ggafebf7ed116adb38ae5218bc3ce06884ca0ac33a18f6b659fcfaf44efb0bab1b74">mi_option_use_numa_nodes</a>,           </div>
<div class="line"><a id="l00936" name="l00936"></a><span class="lineno"><a class="line" href="group__options.html#ggafebf7ed116adb38ae5218bc3ce06884cadcfb5a09580361b1be65901d2d812de6">  936</a></span>  <a class="code hl_enumvalue" href="group__options.html#ggafebf7ed116adb38ae5218bc3ce06884cadcfb5a09580361b1be65901d2d812de6">mi_option_disallow_os_alloc</a>,        </div>
<div class="line"><a id="l00937" name="l00937"></a><span class="lineno"><a class="line" href="group__options.html#ggafebf7ed116adb38ae5218bc3ce06884ca9fa61bd9668479f8452d2195759444cc">  937</a></span>  <a class="code hl_enumvalue" href="group__options.html#ggafebf7ed116adb38ae5218bc3ce06884ca9fa61bd9668479f8452d2195759444cc">mi_option_limit_os_alloc</a>,           </div>
<div class="line"><a id="l00938" name="l00938"></a><span class="lineno"><a class="line" href="group__options.html#ggafebf7ed116adb38ae5218bc3ce06884caa9ad9005d7017c8c30ad2d6ba31db909">  938</a></span>  <a class="code hl_enumvalue" href="group__options.html#ggafebf7ed116adb38ae5218bc3ce06884caa9ad9005d7017c8c30ad2d6ba31db909">mi_option_max_segment_reclaim</a>,        </div>
<div class="line"><a id="l00939" name="l00939"></a><span class="lineno"><a class="line" href="group__options.html#ggafebf7ed116adb38ae5218bc3ce06884ca6364331e305e7d3c0218b058ff3afc88">  939</a></span>  <a class="code hl_enumvalue" href="group__options.html#ggafebf7ed116adb38ae5218bc3ce06884ca6364331e305e7d3c0218b058ff3afc88">mi_option_destroy_on_exit</a>,            </div>
<div class="line"><a id="l00940" name="l00940"></a><span class="lineno"><a class="line" href="group__options.html#ggafebf7ed116adb38ae5218bc3ce06884ca8236501f1ab45d26e6fd885d191a2b5e">  940</a></span>  <a class="code hl_enumvalue" href="group__options.html#ggafebf7ed116adb38ae5218bc3ce06884ca8236501f1ab45d26e6fd885d191a2b5e">mi_option_arena_purge_mult</a>,           </div>
<div class="line"><a id="l00941" name="l00941"></a><span class="lineno"><a class="line" href="group__options.html#ggafebf7ed116adb38ae5218bc3ce06884ca009e4b5684922ce664d73d2a8e1698d9">  941</a></span>  <a class="code hl_enumvalue" href="group__options.html#ggafebf7ed116adb38ae5218bc3ce06884ca009e4b5684922ce664d73d2a8e1698d9">mi_option_abandoned_reclaim_on_free</a>,  </div>
<div class="line"><a id="l00942" name="l00942"></a><span class="lineno"><a class="line" href="group__options.html#ggafebf7ed116adb38ae5218bc3ce06884ca02005f164bdf03f5f00c5be726adf487">  942</a></span>  <a class="code hl_enumvalue" href="group__options.html#ggafebf7ed116adb38ae5218bc3ce06884ca02005f164bdf03f5f00c5be726adf487">mi_option_purge_extend_delay</a>,         </div>
<div class="line"><a id="l00943" name="l00943"></a><span class="lineno"><a class="line" href="group__options.html#ggafebf7ed116adb38ae5218bc3ce06884caeae1696100e4057ffc4182730cc04e40">  943</a></span>  <a class="code hl_enumvalue" href="group__options.html#ggafebf7ed116adb38ae5218bc3ce06884caeae1696100e4057ffc4182730cc04e40">mi_option_disallow_arena_alloc</a>,       </div>
<div class="line"><a id="l00944" name="l00944"></a><span class="lineno"><a class="line" href="group__options.html#ggafebf7ed116adb38ae5218bc3ce06884ca38c67733a3956a1f4eeaca89fab9e78e">  944</a></span>  <a class="code hl_enumvalue" href="group__options.html#ggafebf7ed116adb38ae5218bc3ce06884ca38c67733a3956a1f4eeaca89fab9e78e">mi_option_visit_abandoned</a>,            </div>
<div class="line"><a id="l00945" name="l00945"></a><span class="lineno">  945</span> </div>
<div class="line"><a id="l00946" name="l00946"></a><span class="lineno"><a class="line" href="group__options.html#ggafebf7ed116adb38ae5218bc3ce06884ca5b4357b74be0d87568036c32eb1a2e4a">  946</a></span>  <a class="code hl_enumvalue" href="group__options.html#ggafebf7ed116adb38ae5218bc3ce06884ca5b4357b74be0d87568036c32eb1a2e4a">_mi_option_last</a></div>
<div class="line"><a id="l00947" name="l00947"></a><span class="lineno">  947</span>} <a class="code hl_enumeration" href="group__options.html#gafebf7ed116adb38ae5218bc3ce06884c">mi_option_t</a>;</div>
</div>
<div class="line"><a id="l00948" name="l00948"></a><span class="lineno">  948</span> </div>
<div class="line"><a id="l00949" name="l00949"></a><span class="lineno">  949</span> </div>
<div class="line"><a id="l00950" name="l00950"></a><span class="lineno"><a class="line" href="group__options.html#ga459ad98f18b3fc9275474807fe0ca188">  950</a></span><span class="keywordtype">bool</span>  <a class="code hl_function" href="group__options.html#ga459ad98f18b3fc9275474807fe0ca188">mi_option_is_enabled</a>(<a class="code hl_enumeration" href="group__options.html#gafebf7ed116adb38ae5218bc3ce06884c">mi_option_t</a> option);</div>
<div class="line"><a id="l00951" name="l00951"></a><span class="lineno"><a class="line" href="group__options.html#ga04180ae41b0d601421dd62ced40ca050">  951</a></span><span class="keywordtype">void</span>  <a class="code hl_function" href="group__options.html#ga04180ae41b0d601421dd62ced40ca050">mi_option_enable</a>(<a class="code hl_enumeration" href="group__options.html#gafebf7ed116adb38ae5218bc3ce06884c">mi_option_t</a> option);</div>
<div class="line"><a id="l00952" name="l00952"></a><span class="lineno"><a class="line" href="group__options.html#gaebf6ff707a2e688ebb1a2296ca564054">  952</a></span><span class="keywordtype">void</span>  <a class="code hl_function" href="group__options.html#gaebf6ff707a2e688ebb1a2296ca564054">mi_option_disable</a>(<a class="code hl_enumeration" href="group__options.html#gafebf7ed116adb38ae5218bc3ce06884c">mi_option_t</a> option);</div>
<div class="line"><a id="l00953" name="l00953"></a><span class="lineno"><a class="line" href="group__options.html#ga9a13d05fcb77489cb06d4d017ebd8bed">  953</a></span><span class="keywordtype">void</span>  <a class="code hl_function" href="group__options.html#ga9a13d05fcb77489cb06d4d017ebd8bed">mi_option_set_enabled</a>(<a class="code hl_enumeration" href="group__options.html#gafebf7ed116adb38ae5218bc3ce06884c">mi_option_t</a> option, <span class="keywordtype">bool</span> enable);</div>
<div class="line"><a id="l00954" name="l00954"></a><span class="lineno"><a class="line" href="group__options.html#ga65518b69ec5d32336b50e07f74b3f629">  954</a></span><span class="keywordtype">void</span>  <a class="code hl_function" href="group__options.html#ga65518b69ec5d32336b50e07f74b3f629">mi_option_set_enabled_default</a>(<a class="code hl_enumeration" href="group__options.html#gafebf7ed116adb38ae5218bc3ce06884c">mi_option_t</a> option, <span class="keywordtype">bool</span> enable);</div>
<div class="line"><a id="l00955" name="l00955"></a><span class="lineno">  955</span> </div>
<div class="line"><a id="l00956" name="l00956"></a><span class="lineno"><a class="line" href="group__options.html#ga7e8af195cc81d3fa64ccf2662caa565a">  956</a></span><span class="keywordtype">long</span>   <a class="code hl_function" href="group__options.html#ga7e8af195cc81d3fa64ccf2662caa565a">mi_option_get</a>(<a class="code hl_enumeration" href="group__options.html#gafebf7ed116adb38ae5218bc3ce06884c">mi_option_t</a> option);</div>
<div class="line"><a id="l00957" name="l00957"></a><span class="lineno"><a class="line" href="group__options.html#ga96ad9c406338bd314cfe878cfc9bf723">  957</a></span><span class="keywordtype">long</span>   <a class="code hl_function" href="group__options.html#ga96ad9c406338bd314cfe878cfc9bf723">mi_option_get_clamp</a>(<a class="code hl_enumeration" href="group__options.html#gafebf7ed116adb38ae5218bc3ce06884c">mi_option_t</a> option, <span class="keywordtype">long</span> min, <span class="keywordtype">long</span> max);</div>
<div class="line"><a id="l00958" name="l00958"></a><span class="lineno"><a class="line" href="group__options.html#ga274db5a6ac87cc24ef0b23e7006ed02c">  958</a></span><span class="keywordtype">size_t</span> <a class="code hl_function" href="group__options.html#ga274db5a6ac87cc24ef0b23e7006ed02c">mi_option_get_size</a>(<a class="code hl_enumeration" href="group__options.html#gafebf7ed116adb38ae5218bc3ce06884c">mi_option_t</a> option);</div>
<div class="line"><a id="l00959" name="l00959"></a><span class="lineno">  959</span> </div>
<div class="line"><a id="l00960" name="l00960"></a><span class="lineno"><a class="line" href="group__options.html#gaf84921c32375e25754dc2ee6a911fa60">  960</a></span><span class="keywordtype">void</span>  <a class="code hl_function" href="group__options.html#gaf84921c32375e25754dc2ee6a911fa60">mi_option_set</a>(<a class="code hl_enumeration" href="group__options.html#gafebf7ed116adb38ae5218bc3ce06884c">mi_option_t</a> option, <span class="keywordtype">long</span> value);</div>
<div class="line"><a id="l00961" name="l00961"></a><span class="lineno"><a class="line" href="group__options.html#ga7ef623e440e6e5545cb08c94e71e4b90">  961</a></span><span class="keywordtype">void</span>  <a class="code hl_function" href="group__options.html#ga7ef623e440e6e5545cb08c94e71e4b90">mi_option_set_default</a>(<a class="code hl_enumeration" href="group__options.html#gafebf7ed116adb38ae5218bc3ce06884c">mi_option_t</a> option, <span class="keywordtype">long</span> value);</div>
<div class="line"><a id="l00962" name="l00962"></a><span class="lineno">  962</span> </div>
<div class="line"><a id="l00963" name="l00963"></a><span class="lineno">  963</span></div>
<div class="line"><a id="l00965" name="l00965"></a><span class="lineno">  965</span></div>
<div class="line"><a id="l00972" name="l00972"></a><span class="lineno">  972</span></div>
<div class="line"><a id="l00974" name="l00974"></a><span class="lineno"><a class="line" href="group__posix.html#ga705dc7a64bffacfeeb0141501a5c35d7">  974</a></span><span class="keywordtype">void</span>   <a class="code hl_function" href="group__posix.html#ga705dc7a64bffacfeeb0141501a5c35d7">mi_cfree</a>(<span class="keywordtype">void</span>* p);</div>
<div class="line"><a id="l00975" name="l00975"></a><span class="lineno"><a class="line" href="group__posix.html#ga66bcfeb4faedbb42b796bc680821ef84">  975</a></span><span class="keywordtype">void</span>* <a class="code hl_function" href="group__posix.html#ga66bcfeb4faedbb42b796bc680821ef84">mi__expand</a>(<span class="keywordtype">void</span>* p, <span class="keywordtype">size_t</span> newsize);</div>
<div class="line"><a id="l00976" name="l00976"></a><span class="lineno">  976</span> </div>
<div class="line"><a id="l00977" name="l00977"></a><span class="lineno">  977</span><span class="keywordtype">void</span>*  <a class="code hl_function" href="group__malloc.html#ga23a0fbb452b5dce8e31fab1a1958cacc">mi_recalloc</a>(<span class="keywordtype">void</span>* p, <span class="keywordtype">size_t</span> count, <span class="keywordtype">size_t</span> size);</div>
<div class="line"><a id="l00978" name="l00978"></a><span class="lineno"><a class="line" href="group__posix.html#ga4531c9e775bb3ae12db57c1ba8a5d7de">  978</a></span><span class="keywordtype">size_t</span> <a class="code hl_function" href="group__posix.html#ga4531c9e775bb3ae12db57c1ba8a5d7de">mi_malloc_size</a>(<span class="keyword">const</span> <span class="keywordtype">void</span>* p);</div>
<div class="line"><a id="l00979" name="l00979"></a><span class="lineno"><a class="line" href="group__posix.html#ga9d23ac7885fed7413c11d8e0ffa31071">  979</a></span><span class="keywordtype">size_t</span> <a class="code hl_function" href="group__posix.html#ga9d23ac7885fed7413c11d8e0ffa31071">mi_malloc_good_size</a>(<span class="keywordtype">size_t</span> size);</div>
<div class="line"><a id="l00980" name="l00980"></a><span class="lineno"><a class="line" href="group__posix.html#ga06d07cf357bbac5c73ba5d0c0c421e17">  980</a></span><span class="keywordtype">size_t</span> <a class="code hl_function" href="group__posix.html#ga06d07cf357bbac5c73ba5d0c0c421e17">mi_malloc_usable_size</a>(<span class="keyword">const</span> <span class="keywordtype">void</span> *p);</div>
<div class="line"><a id="l00981" name="l00981"></a><span class="lineno">  981</span> </div>
<div class="line"><a id="l00982" name="l00982"></a><span class="lineno"><a class="line" href="group__posix.html#gacff84f226ba9feb2031b8992e5579447">  982</a></span><span class="keywordtype">int</span> <a class="code hl_function" href="group__posix.html#gacff84f226ba9feb2031b8992e5579447">mi_posix_memalign</a>(<span class="keywordtype">void</span>** p, <span class="keywordtype">size_t</span> alignment, <span class="keywordtype">size_t</span> size);</div>
<div class="line"><a id="l00983" name="l00983"></a><span class="lineno"><a class="line" href="group__posix.html#gad5a69c8fea96aa2b7a7c818c2130090a">  983</a></span><span class="keywordtype">int</span> <a class="code hl_function" href="group__posix.html#gad5a69c8fea96aa2b7a7c818c2130090a">mi__posix_memalign</a>(<span class="keywordtype">void</span>** p, <span class="keywordtype">size_t</span> alignment, <span class="keywordtype">size_t</span> size);</div>
<div class="line"><a id="l00984" name="l00984"></a><span class="lineno"><a class="line" href="group__posix.html#ga726867f13fd29ca36064954c0285b1d8">  984</a></span><span class="keywordtype">void</span>* <a class="code hl_function" href="group__posix.html#ga726867f13fd29ca36064954c0285b1d8">mi_memalign</a>(<span class="keywordtype">size_t</span> alignment, <span class="keywordtype">size_t</span> size);</div>
<div class="line"><a id="l00985" name="l00985"></a><span class="lineno"><a class="line" href="group__posix.html#ga50cafb9722020402f065de93799f64ca">  985</a></span><span class="keywordtype">void</span>* <a class="code hl_function" href="group__posix.html#ga50cafb9722020402f065de93799f64ca">mi_valloc</a>(<span class="keywordtype">size_t</span> size);</div>
<div class="line"><a id="l00986" name="l00986"></a><span class="lineno"><a class="line" href="group__posix.html#ga644bebccdbb2821542dd8c7e7641f476">  986</a></span><span class="keywordtype">void</span>* <a class="code hl_function" href="group__posix.html#ga644bebccdbb2821542dd8c7e7641f476">mi_pvalloc</a>(<span class="keywordtype">size_t</span> size);</div>
<div class="line"><a id="l00987" name="l00987"></a><span class="lineno"><a class="line" href="group__posix.html#ga430ed1513f0571ff83be00ec58a98ee0">  987</a></span><span class="keywordtype">void</span>* <a class="code hl_function" href="group__posix.html#ga430ed1513f0571ff83be00ec58a98ee0">mi_aligned_alloc</a>(<span class="keywordtype">size_t</span> alignment, <span class="keywordtype">size_t</span> size);</div>
<div class="line"><a id="l00988" name="l00988"></a><span class="lineno">  988</span> </div>
<div class="line"><a id="l00989" name="l00989"></a><span class="lineno"><a class="line" href="group__posix.html#gaa9fd7f25c9ac3a20e89b33bd6e383fcf">  989</a></span><span class="keywordtype">unsigned</span> <span class="keywordtype">short</span>* <a class="code hl_function" href="group__posix.html#gaa9fd7f25c9ac3a20e89b33bd6e383fcf">mi_wcsdup</a>(<span class="keyword">const</span> <span class="keywordtype">unsigned</span> <span class="keywordtype">short</span>* s);</div>
<div class="line"><a id="l00990" name="l00990"></a><span class="lineno"><a class="line" href="group__posix.html#ga7b82a44094fdec4d2084eb4288a979b0">  990</a></span><span class="keywordtype">unsigned</span> <span class="keywordtype">char</span>*  <a class="code hl_function" href="group__posix.html#ga7b82a44094fdec4d2084eb4288a979b0">mi_mbsdup</a>(<span class="keyword">const</span> <span class="keywordtype">unsigned</span> <span class="keywordtype">char</span>* s);</div>
<div class="line"><a id="l00991" name="l00991"></a><span class="lineno"><a class="line" href="group__posix.html#gab41369c1a1da7504013a7a0b1d4dd958">  991</a></span><span class="keywordtype">int</span> <a class="code hl_function" href="group__posix.html#gab41369c1a1da7504013a7a0b1d4dd958">mi_dupenv_s</a>(<span class="keywordtype">char</span>** buf, <span class="keywordtype">size_t</span>* size, <span class="keyword">const</span> <span class="keywordtype">char</span>* name);</div>
<div class="line"><a id="l00992" name="l00992"></a><span class="lineno"><a class="line" href="group__posix.html#ga6ac6a6a8f3c96f1af24bb8d0439cbbd1">  992</a></span><span class="keywordtype">int</span> <a class="code hl_function" href="group__posix.html#ga6ac6a6a8f3c96f1af24bb8d0439cbbd1">mi_wdupenv_s</a>(<span class="keywordtype">unsigned</span> <span class="keywordtype">short</span>** buf, <span class="keywordtype">size_t</span>* size, <span class="keyword">const</span> <span class="keywordtype">unsigned</span> <span class="keywordtype">short</span>* name);</div>
<div class="line"><a id="l00993" name="l00993"></a><span class="lineno">  993</span></div>
<div class="line"><a id="l00996" name="l00996"></a><span class="lineno"><a class="line" href="group__posix.html#gadfeccb72748a2f6305474a37d9d57bce">  996</a></span><span class="keywordtype">void</span>* <a class="code hl_function" href="group__posix.html#gadfeccb72748a2f6305474a37d9d57bce">mi_reallocarray</a>(<span class="keywordtype">void</span>* p, <span class="keywordtype">size_t</span> count, <span class="keywordtype">size_t</span> size);</div>
<div class="line"><a id="l00997" name="l00997"></a><span class="lineno">  997</span></div>
<div class="line"><a id="l00999" name="l00999"></a><span class="lineno"><a class="line" href="group__posix.html#ga7e1934d60a3e697950eeb48e042bfad5">  999</a></span><span class="keywordtype">int</span>   <a class="code hl_function" href="group__posix.html#ga7e1934d60a3e697950eeb48e042bfad5">mi_reallocarr</a>(<span class="keywordtype">void</span>* p, <span class="keywordtype">size_t</span> count, <span class="keywordtype">size_t</span> size);</div>
<div class="line"><a id="l01000" name="l01000"></a><span class="lineno"> 1000</span> </div>
<div class="line"><a id="l01001" name="l01001"></a><span class="lineno"><a class="line" href="group__posix.html#gaf82cbb4b4f24acf723348628451798d3"> 1001</a></span><span class="keywordtype">void</span>* <a class="code hl_function" href="group__posix.html#gaf82cbb4b4f24acf723348628451798d3">mi_aligned_recalloc</a>(<span class="keywordtype">void</span>* p, <span class="keywordtype">size_t</span> newcount, <span class="keywordtype">size_t</span> size, <span class="keywordtype">size_t</span> alignment);</div>
<div class="line"><a id="l01002" name="l01002"></a><span class="lineno"><a class="line" href="group__posix.html#ga16570deddd559001b44953eedbad0084"> 1002</a></span><span class="keywordtype">void</span>* <a class="code hl_function" href="group__posix.html#ga16570deddd559001b44953eedbad0084">mi_aligned_offset_recalloc</a>(<span class="keywordtype">void</span>* p, <span class="keywordtype">size_t</span> newcount, <span class="keywordtype">size_t</span> size, <span class="keywordtype">size_t</span> alignment, <span class="keywordtype">size_t</span> offset);</div>
<div class="line"><a id="l01003" name="l01003"></a><span class="lineno"> 1003</span> </div>
<div class="line"><a id="l01004" name="l01004"></a><span class="lineno"><a class="line" href="group__posix.html#gae01389eedab8d67341ff52e2aad80ebb"> 1004</a></span><span class="keywordtype">void</span> <a class="code hl_function" href="group__posix.html#gae01389eedab8d67341ff52e2aad80ebb">mi_free_size</a>(<span class="keywordtype">void</span>* p, <span class="keywordtype">size_t</span> size);</div>
<div class="line"><a id="l01005" name="l01005"></a><span class="lineno"><a class="line" href="group__posix.html#ga72e9d7ffb5fe94d69bc722c8506e27bc"> 1005</a></span><span class="keywordtype">void</span> <a class="code hl_function" href="group__posix.html#ga72e9d7ffb5fe94d69bc722c8506e27bc">mi_free_size_aligned</a>(<span class="keywordtype">void</span>* p, <span class="keywordtype">size_t</span> size, <span class="keywordtype">size_t</span> alignment);</div>
<div class="line"><a id="l01006" name="l01006"></a><span class="lineno"><a class="line" href="group__posix.html#ga0d28d5cf61e6bfbb18c63092939fe5c9"> 1006</a></span><span class="keywordtype">void</span> <a class="code hl_function" href="group__posix.html#ga0d28d5cf61e6bfbb18c63092939fe5c9">mi_free_aligned</a>(<span class="keywordtype">void</span>* p, <span class="keywordtype">size_t</span> alignment);</div>
<div class="line"><a id="l01007" name="l01007"></a><span class="lineno"> 1007</span></div>
<div class="line"><a id="l01009" name="l01009"></a><span class="lineno"> 1009</span></div>
<div class="line"><a id="l01022" name="l01022"></a><span class="lineno"> 1022</span></div>
<div class="line"><a id="l01024" name="l01024"></a><span class="lineno"><a class="line" href="group__cpp.html#ga633d96e3bc7011f960df9f3b2731fc6a"> 1024</a></span><span class="keywordtype">void</span>* <a class="code hl_function" href="group__cpp.html#ga633d96e3bc7011f960df9f3b2731fc6a">mi_new</a>(std::size_t n) <span class="keyword">noexcept</span>(<span class="keyword">false</span>);</div>
<div class="line"><a id="l01025" name="l01025"></a><span class="lineno"> 1025</span></div>
<div class="line"><a id="l01027" name="l01027"></a><span class="lineno"><a class="line" href="group__cpp.html#gadd11b85c15d21d308386844b5233856c"> 1027</a></span><span class="keywordtype">void</span>* <a class="code hl_function" href="group__cpp.html#gadd11b85c15d21d308386844b5233856c">mi_new_n</a>(<span class="keywordtype">size_t</span> count, <span class="keywordtype">size_t</span> size) <span class="keyword">noexcept</span>(<span class="keyword">false</span>);</div>
<div class="line"><a id="l01028" name="l01028"></a><span class="lineno"> 1028</span></div>
<div class="line"><a id="l01030" name="l01030"></a><span class="lineno"><a class="line" href="group__cpp.html#ga79c54da0b4b4ce9fcc11d2f6ef6675f8"> 1030</a></span><span class="keywordtype">void</span>* <a class="code hl_function" href="group__cpp.html#ga79c54da0b4b4ce9fcc11d2f6ef6675f8">mi_new_aligned</a>(std::size_t n, std::align_val_t alignment) <span class="keyword">noexcept</span>(<span class="keyword">false</span>);</div>
<div class="line"><a id="l01031" name="l01031"></a><span class="lineno"> 1031</span></div>
<div class="line"><a id="l01033" name="l01033"></a><span class="lineno"><a class="line" href="group__cpp.html#ga5cb4f120d1f7296074256215aa9a9e54"> 1033</a></span><span class="keywordtype">void</span>* <a class="code hl_function" href="group__cpp.html#ga5cb4f120d1f7296074256215aa9a9e54">mi_new_nothrow</a>(<span class="keywordtype">size_t</span> n);</div>
<div class="line"><a id="l01034" name="l01034"></a><span class="lineno"> 1034</span></div>
<div class="line"><a id="l01036" name="l01036"></a><span class="lineno"><a class="line" href="group__cpp.html#ga92ae00b6dd64406c7e64557711ec04b7"> 1036</a></span><span class="keywordtype">void</span>* <a class="code hl_function" href="group__cpp.html#ga92ae00b6dd64406c7e64557711ec04b7">mi_new_aligned_nothrow</a>(<span class="keywordtype">size_t</span> n, <span class="keywordtype">size_t</span> alignment);</div>
<div class="line"><a id="l01037" name="l01037"></a><span class="lineno"> 1037</span></div>
<div class="line"><a id="l01039" name="l01039"></a><span class="lineno"><a class="line" href="group__cpp.html#ga6867d89baf992728e0cc20a1f47db4d0"> 1039</a></span><span class="keywordtype">void</span>* <a class="code hl_function" href="group__cpp.html#ga6867d89baf992728e0cc20a1f47db4d0">mi_new_realloc</a>(<span class="keywordtype">void</span>* p, <span class="keywordtype">size_t</span> newsize);</div>
<div class="line"><a id="l01040" name="l01040"></a><span class="lineno"> 1040</span></div>
<div class="line"><a id="l01042" name="l01042"></a><span class="lineno"><a class="line" href="group__cpp.html#gaace912ce086682d56f3ce9f7638d9d67"> 1042</a></span><span class="keywordtype">void</span>* <a class="code hl_function" href="group__cpp.html#gaace912ce086682d56f3ce9f7638d9d67">mi_new_reallocn</a>(<span class="keywordtype">void</span>* p, <span class="keywordtype">size_t</span> newcount, <span class="keywordtype">size_t</span> size);</div>
<div class="line"><a id="l01043" name="l01043"></a><span class="lineno"> 1043</span></div>
<div class="line"><a id="l01051" name="l01051"></a><span class="lineno"><a class="line" href="group__cpp.html"> 1051</a></span><span class="keyword">template</span>&lt;<span class="keyword">class</span> T&gt; <span class="keyword">struct </span><a class="code hl_struct" href="group__cpp.html#structmi__stl__allocator">mi_stl_allocator</a> { }</div>
<div class="line"><a id="l01052" name="l01052"></a><span class="lineno"> 1052</span></div>
<div class="line"><a id="l01054" name="l01054"></a><span class="lineno"> 1054</span></div>
<div class="line"><a id="l01113" name="l01113"></a><span class="lineno"> 1113</span></div>
<div class="line"><a id="l01198" name="l01198"></a><span class="lineno"> 1198</span></div>
<div class="line"><a id="l01263" name="l01263"></a><span class="lineno"> 1263</span></div>
<div class="line"><a id="l01433" name="l01433"></a><span class="lineno"> 1433</span></div>
<div class="ttc" id="agroup__aligned_html_ga2022f71b95a7cd6cce1b6e07752ae8ca"><div class="ttname"><a href="group__aligned.html#ga2022f71b95a7cd6cce1b6e07752ae8ca">mi_malloc_aligned_at</a></div><div class="ttdeci">void * mi_malloc_aligned_at(size_t size, size_t alignment, size_t offset)</div><div class="ttdoc">Allocate size bytes aligned by alignment at a specified offset.</div></div>
<div class="ttc" id="agroup__aligned_html_ga424ef386fb1f9f8e0a86ab53f16eaaf1"><div class="ttname"><a href="group__aligned.html#ga424ef386fb1f9f8e0a86ab53f16eaaf1">mi_calloc_aligned</a></div><div class="ttdeci">void * mi_calloc_aligned(size_t count, size_t size, size_t alignment)</div></div>
<div class="ttc" id="agroup__aligned_html_ga5d7a46d054b4d7abe9d8d2474add2edf"><div class="ttname"><a href="group__aligned.html#ga5d7a46d054b4d7abe9d8d2474add2edf">mi_realloc_aligned</a></div><div class="ttdeci">void * mi_realloc_aligned(void *p, size_t newsize, size_t alignment)</div></div>
<div class="ttc" id="agroup__aligned_html_ga69578ff1a98ca16e1dcd02c0995cd65c"><div class="ttname"><a href="group__aligned.html#ga69578ff1a98ca16e1dcd02c0995cd65c">mi_malloc_aligned</a></div><div class="ttdeci">void * mi_malloc_aligned(size_t size, size_t alignment)</div><div class="ttdoc">Allocate size bytes aligned by alignment.</div></div>
<div class="ttc" id="agroup__aligned_html_ga7c1778805ce50ebbf02ccbd5e39d5dba"><div class="ttname"><a href="group__aligned.html#ga7c1778805ce50ebbf02ccbd5e39d5dba">mi_zalloc_aligned_at</a></div><div class="ttdeci">void * mi_zalloc_aligned_at(size_t size, size_t alignment, size_t offset)</div></div>
<div class="ttc" id="agroup__aligned_html_ga977f96bd2c5c141bcd70e6685c90d6c3"><div class="ttname"><a href="group__aligned.html#ga977f96bd2c5c141bcd70e6685c90d6c3">mi_calloc_aligned_at</a></div><div class="ttdeci">void * mi_calloc_aligned_at(size_t count, size_t size, size_t alignment, size_t offset)</div></div>
<div class="ttc" id="agroup__aligned_html_gaac7d0beb782f9b9ac31f47492b130f82"><div class="ttname"><a href="group__aligned.html#gaac7d0beb782f9b9ac31f47492b130f82">mi_zalloc_aligned</a></div><div class="ttdeci">void * mi_zalloc_aligned(size_t size, size_t alignment)</div></div>
<div class="ttc" id="agroup__aligned_html_gad06dcf2bb8faadb2c8ea61ee5d24bbf6"><div class="ttname"><a href="group__aligned.html#gad06dcf2bb8faadb2c8ea61ee5d24bbf6">mi_realloc_aligned_at</a></div><div class="ttdeci">void * mi_realloc_aligned_at(void *p, size_t newsize, size_t alignment, size_t offset)</div></div>
<div class="ttc" id="agroup__analysis_html_a2b7a0c92ece8daf46b558efc990ebdc1"><div class="ttname"><a href="group__analysis.html#a2b7a0c92ece8daf46b558efc990ebdc1">mi_heap_area_t::heap_tag</a></div><div class="ttdeci">int heap_tag</div><div class="ttdoc">heap tag associated with this area (see mi_heap_new_ex)</div><div class="ttdef"><b>Definition</b> mimalloc-doc.h:860</div></div>
<div class="ttc" id="agroup__analysis_html_a332a6c14d736a99699d5453a1cb04b41"><div class="ttname"><a href="group__analysis.html#a332a6c14d736a99699d5453a1cb04b41">mi_heap_area_t::block_size</a></div><div class="ttdeci">size_t block_size</div><div class="ttdoc">size in bytes of one block</div><div class="ttdef"><b>Definition</b> mimalloc-doc.h:858</div></div>
<div class="ttc" id="agroup__analysis_html_ab47526df656d8837ec3e97f11b83f835"><div class="ttname"><a href="group__analysis.html#ab47526df656d8837ec3e97f11b83f835">mi_heap_area_t::committed</a></div><div class="ttdeci">size_t committed</div><div class="ttdoc">current committed bytes of this area</div><div class="ttdef"><b>Definition</b> mimalloc-doc.h:856</div></div>
<div class="ttc" id="agroup__analysis_html_ab53664e31d7fe2564f8d42041ef75cb3"><div class="ttname"><a href="group__analysis.html#ab53664e31d7fe2564f8d42041ef75cb3">mi_heap_area_t::full_block_size</a></div><div class="ttdeci">size_t full_block_size</div><div class="ttdoc">size in bytes of a full block including padding and metadata.</div><div class="ttdef"><b>Definition</b> mimalloc-doc.h:859</div></div>
<div class="ttc" id="agroup__analysis_html_ab820302c5cd0df133eb8e51650a008b4"><div class="ttname"><a href="group__analysis.html#ab820302c5cd0df133eb8e51650a008b4">mi_heap_area_t::used</a></div><div class="ttdeci">size_t used</div><div class="ttdoc">bytes in use by allocated blocks</div><div class="ttdef"><b>Definition</b> mimalloc-doc.h:857</div></div>
<div class="ttc" id="agroup__analysis_html_ae0085e6e1cf059a4eb7767e30e9991b8"><div class="ttname"><a href="group__analysis.html#ae0085e6e1cf059a4eb7767e30e9991b8">mi_heap_area_t::blocks</a></div><div class="ttdeci">void * blocks</div><div class="ttdoc">start of the area containing heap blocks</div><div class="ttdef"><b>Definition</b> mimalloc-doc.h:854</div></div>
<div class="ttc" id="agroup__analysis_html_ae848a3e6840414891035423948ca0383"><div class="ttname"><a href="group__analysis.html#ae848a3e6840414891035423948ca0383">mi_heap_area_t::reserved</a></div><div class="ttdeci">size_t reserved</div><div class="ttdoc">bytes reserved for this area</div><div class="ttdef"><b>Definition</b> mimalloc-doc.h:855</div></div>
<div class="ttc" id="agroup__analysis_html_ga0d67c1789faaa15ff366c024fcaf6377"><div class="ttname"><a href="group__analysis.html#ga0d67c1789faaa15ff366c024fcaf6377">mi_heap_check_owned</a></div><div class="ttdeci">bool mi_heap_check_owned(mi_heap_t *heap, const void *p)</div><div class="ttdoc">Check safely if any pointer is part of a heap.</div></div>
<div class="ttc" id="agroup__analysis_html_ga628c237489c2679af84a4d0d143b3dd5"><div class="ttname"><a href="group__analysis.html#ga628c237489c2679af84a4d0d143b3dd5">mi_check_owned</a></div><div class="ttdeci">bool mi_check_owned(const void *p)</div><div class="ttdoc">Check safely if any pointer is part of the default heap of this thread.</div></div>
<div class="ttc" id="agroup__analysis_html_ga6a4865a887b2ec5247854af61562503c"><div class="ttname"><a href="group__analysis.html#ga6a4865a887b2ec5247854af61562503c">mi_abandoned_visit_blocks</a></div><div class="ttdeci">bool mi_abandoned_visit_blocks(mi_subproc_id_t subproc_id, int heap_tag, bool visit_blocks, mi_block_visit_fun *visitor, void *arg)</div><div class="ttdoc">Visit all areas and blocks in abandoned heaps.</div></div>
<div class="ttc" id="agroup__analysis_html_ga70c46687dc6e9dc98b232b02646f8bed"><div class="ttname"><a href="group__analysis.html#ga70c46687dc6e9dc98b232b02646f8bed">mi_heap_visit_blocks</a></div><div class="ttdeci">bool mi_heap_visit_blocks(const mi_heap_t *heap, bool visit_all_blocks, mi_block_visit_fun *visitor, void *arg)</div><div class="ttdoc">Visit all areas and blocks in a heap.</div></div>
<div class="ttc" id="agroup__analysis_html_ga8255dc9371e6b299d9802a610c4e34ec"><div class="ttname"><a href="group__analysis.html#ga8255dc9371e6b299d9802a610c4e34ec">mi_block_visit_fun</a></div><div class="ttdeci">bool mi_block_visit_fun(const mi_heap_t *heap, const mi_heap_area_t *area, void *block, size_t block_size, void *arg)</div><div class="ttdoc">Visitor function passed to mi_heap_visit_blocks()</div><div class="ttdef"><b>Definition</b> mimalloc-doc.h:870</div></div>
<div class="ttc" id="agroup__analysis_html_gaa862aa8ed8d57d84cae41fc1022d71af"><div class="ttname"><a href="group__analysis.html#gaa862aa8ed8d57d84cae41fc1022d71af">mi_heap_contains_block</a></div><div class="ttdeci">bool mi_heap_contains_block(mi_heap_t *heap, const void *p)</div><div class="ttdoc">Does a heap contain a pointer to a previously allocated block?</div></div>
<div class="ttc" id="agroup__analysis_html_structmi__heap__area__t"><div class="ttname"><a href="group__analysis.html#structmi__heap__area__t">mi_heap_area_t</a></div><div class="ttdoc">An area of heap space contains blocks of a single size.</div><div class="ttdef"><b>Definition</b> mimalloc-doc.h:853</div></div>
<div class="ttc" id="agroup__cpp_html_ga5cb4f120d1f7296074256215aa9a9e54"><div class="ttname"><a href="group__cpp.html#ga5cb4f120d1f7296074256215aa9a9e54">mi_new_nothrow</a></div><div class="ttdeci">void * mi_new_nothrow(size_t n)</div><div class="ttdoc">like mi_malloc, but when out of memory, use std::get_new_handler but return NULL on failure.</div></div>
<div class="ttc" id="agroup__cpp_html_ga633d96e3bc7011f960df9f3b2731fc6a"><div class="ttname"><a href="group__cpp.html#ga633d96e3bc7011f960df9f3b2731fc6a">mi_new</a></div><div class="ttdeci">void * mi_new(std::size_t n) noexcept(false)</div><div class="ttdoc">like mi_malloc(), but when out of memory, use std::get_new_handler and raise std::bad_alloc exception...</div></div>
<div class="ttc" id="agroup__cpp_html_ga6867d89baf992728e0cc20a1f47db4d0"><div class="ttname"><a href="group__cpp.html#ga6867d89baf992728e0cc20a1f47db4d0">mi_new_realloc</a></div><div class="ttdeci">void * mi_new_realloc(void *p, size_t newsize)</div><div class="ttdoc">like mi_realloc(), but when out of memory, use std::get_new_handler and raise std::bad_alloc exceptio...</div></div>
<div class="ttc" id="agroup__cpp_html_ga79c54da0b4b4ce9fcc11d2f6ef6675f8"><div class="ttname"><a href="group__cpp.html#ga79c54da0b4b4ce9fcc11d2f6ef6675f8">mi_new_aligned</a></div><div class="ttdeci">void * mi_new_aligned(std::size_t n, std::align_val_t alignment) noexcept(false)</div><div class="ttdoc">like mi_malloc_aligned(), but when out of memory, use std::get_new_handler and raise std::bad_alloc e...</div></div>
<div class="ttc" id="agroup__cpp_html_ga92ae00b6dd64406c7e64557711ec04b7"><div class="ttname"><a href="group__cpp.html#ga92ae00b6dd64406c7e64557711ec04b7">mi_new_aligned_nothrow</a></div><div class="ttdeci">void * mi_new_aligned_nothrow(size_t n, size_t alignment)</div><div class="ttdoc">like mi_malloc_aligned, but when out of memory, use std::get_new_handler but return NULL on failure.</div></div>
<div class="ttc" id="agroup__cpp_html_gaace912ce086682d56f3ce9f7638d9d67"><div class="ttname"><a href="group__cpp.html#gaace912ce086682d56f3ce9f7638d9d67">mi_new_reallocn</a></div><div class="ttdeci">void * mi_new_reallocn(void *p, size_t newcount, size_t size)</div><div class="ttdoc">like mi_reallocn(), but when out of memory, use std::get_new_handler and raise std::bad_alloc excepti...</div></div>
<div class="ttc" id="agroup__cpp_html_gadd11b85c15d21d308386844b5233856c"><div class="ttname"><a href="group__cpp.html#gadd11b85c15d21d308386844b5233856c">mi_new_n</a></div><div class="ttdeci">void * mi_new_n(size_t count, size_t size) noexcept(false)</div><div class="ttdoc">like mi_mallocn(), but when out of memory, use std::get_new_handler and raise std::bad_alloc exceptio...</div></div>
<div class="ttc" id="agroup__cpp_html_structmi__stl__allocator"><div class="ttname"><a href="group__cpp.html#structmi__stl__allocator">mi_stl_allocator</a></div><div class="ttdoc">std::allocator implementation for mimalloc for use in STL containers.</div><div class="ttdef"><b>Definition</b> mimalloc-doc.h:1051</div></div>
<div class="ttc" id="agroup__extended_html_ga00ec3324b6b2591c7fe3677baa30a767"><div class="ttname"><a href="group__extended.html#ga00ec3324b6b2591c7fe3677baa30a767">mi_reserve_os_memory</a></div><div class="ttdeci">int mi_reserve_os_memory(size_t size, bool commit, bool allow_large)</div><div class="ttdoc">Reserve OS memory for use by mimalloc.</div></div>
<div class="ttc" id="agroup__extended_html_ga089c859d9eddc5f9b4bd946cd53cebee"><div class="ttname"><a href="group__extended.html#ga089c859d9eddc5f9b4bd946cd53cebee">mi_usable_size</a></div><div class="ttdeci">size_t mi_usable_size(void *p)</div><div class="ttdoc">Return the available bytes in a memory block.</div></div>
<div class="ttc" id="agroup__extended_html_ga0ae4581e85453456a0d658b2b98bf7bf"><div class="ttname"><a href="group__extended.html#ga0ae4581e85453456a0d658b2b98bf7bf">mi_thread_done</a></div><div class="ttdeci">void mi_thread_done(void)</div><div class="ttdoc">Uninitialize mimalloc on a thread.</div></div>
<div class="ttc" id="agroup__extended_html_ga292a45f7dbc7cd23c5352ce1f0002816"><div class="ttname"><a href="group__extended.html#ga292a45f7dbc7cd23c5352ce1f0002816">mi_deferred_free_fun</a></div><div class="ttdeci">void mi_deferred_free_fun(bool force, unsigned long long heartbeat, void *arg)</div><div class="ttdoc">Type of deferred free functions.</div><div class="ttdef"><b>Definition</b> mimalloc-doc.h:354</div></div>
<div class="ttc" id="agroup__extended_html_ga2d126e5c62d3badc35445e5d84166df2"><div class="ttname"><a href="group__extended.html#ga2d126e5c62d3badc35445e5d84166df2">mi_stats_print</a></div><div class="ttdeci">void mi_stats_print(void *out)</div><div class="ttdoc">Deprecated.</div></div>
<div class="ttc" id="agroup__extended_html_ga2ecba0d7ebdc99e71bb985c4a1609806"><div class="ttname"><a href="group__extended.html#ga2ecba0d7ebdc99e71bb985c4a1609806">mi_subproc_main</a></div><div class="ttdeci">mi_subproc_id_t mi_subproc_main(void)</div><div class="ttdoc">Get the main sub-process identifier.</div></div>
<div class="ttc" id="agroup__extended_html_ga3132f521fb756fc0e8ec0b74fb58df50"><div class="ttname"><a href="group__extended.html#ga3132f521fb756fc0e8ec0b74fb58df50">mi_reserve_huge_os_pages_interleave</a></div><div class="ttdeci">int mi_reserve_huge_os_pages_interleave(size_t pages, size_t numa_nodes, size_t timeout_msecs)</div><div class="ttdoc">Reserve pages of huge OS pages (1GiB) evenly divided over numa_nodes nodes, but stops after at most t...</div></div>
<div class="ttc" id="agroup__extended_html_ga32f519797fd9a81acb4f52d36e6d751b"><div class="ttname"><a href="group__extended.html#ga32f519797fd9a81acb4f52d36e6d751b">mi_reserve_os_memory_ex</a></div><div class="ttdeci">int mi_reserve_os_memory_ex(size_t size, bool commit, bool allow_large, bool exclusive, mi_arena_id_t *arena_id)</div><div class="ttdoc">Reserve OS memory to be managed in an arena.</div></div>
<div class="ttc" id="agroup__extended_html_ga3460a6ca91af97be4058f523d3cb8ece"><div class="ttname"><a href="group__extended.html#ga3460a6ca91af97be4058f523d3cb8ece">mi_register_deferred_free</a></div><div class="ttdeci">void mi_register_deferred_free(mi_deferred_free_fun *deferred_free, void *arg)</div><div class="ttdoc">Register a deferred free function.</div></div>
<div class="ttc" id="agroup__extended_html_ga3ae360583f4351aa5267ee7e43008faf"><div class="ttname"><a href="group__extended.html#ga3ae360583f4351aa5267ee7e43008faf">mi_heap_new_ex</a></div><div class="ttdeci">mi_heap_t * mi_heap_new_ex(int heap_tag, bool allow_destroy, mi_arena_id_t arena_id)</div><div class="ttdoc">Create a new heap.</div></div>
<div class="ttc" id="agroup__extended_html_ga3bb8468b8cfcc6e2a61d98aee85c5f99"><div class="ttname"><a href="group__extended.html#ga3bb8468b8cfcc6e2a61d98aee85c5f99">mi_stats_reset</a></div><div class="ttdeci">void mi_stats_reset(void)</div><div class="ttdoc">Reset statistics.</div></div>
<div class="ttc" id="agroup__extended_html_ga41ce8525d77bbb60f618fa1029994f6e"><div class="ttname"><a href="group__extended.html#ga41ce8525d77bbb60f618fa1029994f6e">mi_manage_os_memory_ex</a></div><div class="ttdeci">bool mi_manage_os_memory_ex(void *start, size_t size, bool is_committed, bool is_large, bool is_zero, int numa_node, bool exclusive, mi_arena_id_t *arena_id)</div><div class="ttdoc">Manage externally allocated memory as a mimalloc arena.</div></div>
<div class="ttc" id="agroup__extended_html_ga421430e2226d7d468529cec457396756"><div class="ttname"><a href="group__extended.html#ga421430e2226d7d468529cec457396756">mi_collect</a></div><div class="ttdeci">void mi_collect(bool force)</div><div class="ttdoc">Eagerly free memory.</div></div>
<div class="ttc" id="agroup__extended_html_ga4c6486a1fdcd7a423b5f25fe4be8e0cf"><div class="ttname"><a href="group__extended.html#ga4c6486a1fdcd7a423b5f25fe4be8e0cf">mi_manage_os_memory</a></div><div class="ttdeci">bool mi_manage_os_memory(void *start, size_t size, bool is_committed, bool is_large, bool is_zero, int numa_node)</div><div class="ttdoc">Manage a particular memory area for use by mimalloc.</div></div>
<div class="ttc" id="agroup__extended_html_ga51c47637e81df0e2f13a2d7a2dec123e"><div class="ttname"><a href="group__extended.html#ga51c47637e81df0e2f13a2d7a2dec123e">mi_zalloc_small</a></div><div class="ttdeci">void * mi_zalloc_small(size_t size)</div><div class="ttdoc">Allocate a zero initialized small object.</div></div>
<div class="ttc" id="agroup__extended_html_ga537f13b299ddf801e49a5a94fde02c79"><div class="ttname"><a href="group__extended.html#ga537f13b299ddf801e49a5a94fde02c79">mi_stats_print_out</a></div><div class="ttdeci">void mi_stats_print_out(mi_output_fun *out, void *arg)</div><div class="ttdoc">Print the main statistics.</div></div>
<div class="ttc" id="agroup__extended_html_ga591aab1c2bc2ca920e33f0f9f9cb5c52"><div class="ttname"><a href="group__extended.html#ga591aab1c2bc2ca920e33f0f9f9cb5c52">mi_reserve_huge_os_pages_at_ex</a></div><div class="ttdeci">int mi_reserve_huge_os_pages_at_ex(size_t pages, int numa_node, size_t timeout_msecs, bool exclusive, mi_arena_id_t *arena_id)</div><div class="ttdoc">Reserve huge OS pages (1GiB) into a single arena.</div></div>
<div class="ttc" id="agroup__extended_html_ga5f071b10d4df1c3658e04e7fd67a94e6"><div class="ttname"><a href="group__extended.html#ga5f071b10d4df1c3658e04e7fd67a94e6">mi_is_in_heap_region</a></div><div class="ttdeci">bool mi_is_in_heap_region(const void *p)</div><div class="ttdoc">Is a pointer part of our heap?</div></div>
<div class="ttc" id="agroup__extended_html_ga7795a13d20087447281858d2c771cca1"><div class="ttname"><a href="group__extended.html#ga7795a13d20087447281858d2c771cca1">mi_reserve_huge_os_pages_at</a></div><div class="ttdeci">int mi_reserve_huge_os_pages_at(size_t pages, int numa_node, size_t timeout_msecs)</div><div class="ttdoc">Reserve pages of huge OS pages (1GiB) at a specific numa_node, but stops after at most timeout_msecs ...</div></div>
<div class="ttc" id="agroup__extended_html_ga7d862c2affd5790381da14eb102a364d"><div class="ttname"><a href="group__extended.html#ga7d862c2affd5790381da14eb102a364d">mi_process_info</a></div><div class="ttdeci">void mi_process_info(size_t *elapsed_msecs, size_t *user_msecs, size_t *system_msecs, size_t *current_rss, size_t *peak_rss, size_t *current_commit, size_t *peak_commit, size_t *page_faults)</div><div class="ttdoc">Return process information (time and memory usage).</div></div>
<div class="ttc" id="agroup__extended_html_ga7f050bc6b897da82692174f5fce59cde"><div class="ttname"><a href="group__extended.html#ga7f050bc6b897da82692174f5fce59cde">mi_malloc_small</a></div><div class="ttdeci">void * mi_malloc_small(size_t size)</div><div class="ttdoc">Allocate a small object.</div></div>
<div class="ttc" id="agroup__extended_html_ga8068cac328e41fa2170faef707315243"><div class="ttname"><a href="group__extended.html#ga8068cac328e41fa2170faef707315243">mi_subproc_new</a></div><div class="ttdeci">mi_subproc_id_t mi_subproc_new(void)</div><div class="ttdoc">Create a fresh sub-process (with no associated threads yet).</div></div>
<div class="ttc" id="agroup__extended_html_ga83fc6a688b322261e1c2deab000b0591"><div class="ttname"><a href="group__extended.html#ga83fc6a688b322261e1c2deab000b0591">mi_error_fun</a></div><div class="ttdeci">void mi_error_fun(int err, void *arg)</div><div class="ttdoc">Type of error callback functions.</div><div class="ttdef"><b>Definition</b> mimalloc-doc.h:393</div></div>
<div class="ttc" id="agroup__extended_html_ga854b1de8cb067c7316286c28b2fcd3d1"><div class="ttname"><a href="group__extended.html#ga854b1de8cb067c7316286c28b2fcd3d1">mi_stats_merge</a></div><div class="ttdeci">void mi_stats_merge(void)</div><div class="ttdoc">Merge thread local statistics with the main statistics and reset.</div></div>
<div class="ttc" id="agroup__extended_html_ga8c0bcd1fee27c7641e9c3c0d991b3b7d"><div class="ttname"><a href="group__extended.html#ga8c0bcd1fee27c7641e9c3c0d991b3b7d">mi_subproc_id_t</a></div><div class="ttdeci">void * mi_subproc_id_t</div><div class="ttdoc">A process can associate threads with sub-processes.</div><div class="ttdef"><b>Definition</b> mimalloc-doc.h:557</div></div>
<div class="ttc" id="agroup__extended_html_ga99fe38650d0b02e0e0f89ee024db91d3"><div class="ttname"><a href="group__extended.html#ga99fe38650d0b02e0e0f89ee024db91d3">mi_arena_id_t</a></div><div class="ttdeci">int mi_arena_id_t</div><div class="ttdoc">Mimalloc uses large (virtual) memory areas, called &quot;arena&quot;s, from the OS to manage its memory.</div><div class="ttdef"><b>Definition</b> mimalloc-doc.h:499</div></div>
<div class="ttc" id="agroup__extended_html_ga9a25a00a22151619a0be91a10af7787f"><div class="ttname"><a href="group__extended.html#ga9a25a00a22151619a0be91a10af7787f">mi_arena_area</a></div><div class="ttdeci">void * mi_arena_area(mi_arena_id_t arena_id, size_t *size)</div><div class="ttdoc">Return the size of an arena.</div></div>
<div class="ttc" id="agroup__extended_html_gaa1d55e0e894be240827e5d87ec3a1f45"><div class="ttname"><a href="group__extended.html#gaa1d55e0e894be240827e5d87ec3a1f45">mi_register_error</a></div><div class="ttdeci">void mi_register_error(mi_error_fun *errfun, void *arg)</div><div class="ttdoc">Register an error callback function.</div></div>
<div class="ttc" id="agroup__extended_html_gaa7d263e9429bac9ac8345c9d25de610e"><div class="ttname"><a href="group__extended.html#gaa7d263e9429bac9ac8345c9d25de610e">mi_subproc_delete</a></div><div class="ttdeci">void mi_subproc_delete(mi_subproc_id_t subproc)</div><div class="ttdoc">Delete a previously created sub-process.</div></div>
<div class="ttc" id="agroup__extended_html_gaad25050b19f30cd79397b227e0157a3f"><div class="ttname"><a href="group__extended.html#gaad25050b19f30cd79397b227e0157a3f">mi_is_redirected</a></div><div class="ttdeci">bool mi_is_redirected()</div><div class="ttdoc">Is the C runtime malloc API redirected?</div></div>
<div class="ttc" id="agroup__extended_html_gaaf2d9976576d5efd5544be12848af949"><div class="ttname"><a href="group__extended.html#gaaf2d9976576d5efd5544be12848af949">mi_heap_new_in_arena</a></div><div class="ttdeci">mi_heap_t * mi_heap_new_in_arena(mi_arena_id_t arena_id)</div><div class="ttdoc">Create a new heap that only allocates in the specified arena.</div></div>
<div class="ttc" id="agroup__extended_html_gab1dac8476c46cb9eecab767eb40c1525"><div class="ttname"><a href="group__extended.html#gab1dac8476c46cb9eecab767eb40c1525">mi_thread_stats_print_out</a></div><div class="ttdeci">void mi_thread_stats_print_out(mi_output_fun *out, void *arg)</div><div class="ttdoc">Print out heap statistics for this thread.</div></div>
<div class="ttc" id="agroup__extended_html_gac057927cd06c854b45fe7847e921bd47"><div class="ttname"><a href="group__extended.html#gac057927cd06c854b45fe7847e921bd47">mi_good_size</a></div><div class="ttdeci">size_t mi_good_size(size_t size)</div><div class="ttdoc">Return the used allocation size.</div></div>
<div class="ttc" id="agroup__extended_html_gad7439207f8f71fb6c382a9ea20b997e7"><div class="ttname"><a href="group__extended.html#gad7439207f8f71fb6c382a9ea20b997e7">mi_debug_show_arenas</a></div><div class="ttdeci">void mi_debug_show_arenas(bool show_inuse, bool show_abandoned, bool show_purge)</div><div class="ttdoc">Show all current arena&#39;s.</div></div>
<div class="ttc" id="agroup__extended_html_gadbc53414eb68b275588ec001ce1ddc7c"><div class="ttname"><a href="group__extended.html#gadbc53414eb68b275588ec001ce1ddc7c">mi_subproc_add_current_thread</a></div><div class="ttdeci">void mi_subproc_add_current_thread(mi_subproc_id_t subproc)</div><div class="ttdoc">Add the current thread to the given sub-process.</div></div>
<div class="ttc" id="agroup__extended_html_gadf31cea7d0332a81c8b882cbbdbadb8d"><div class="ttname"><a href="group__extended.html#gadf31cea7d0332a81c8b882cbbdbadb8d">mi_output_fun</a></div><div class="ttdeci">void mi_output_fun(const char *msg, void *arg)</div><div class="ttdoc">Type of output functions.</div><div class="ttdef"><b>Definition</b> mimalloc-doc.h:378</div></div>
<div class="ttc" id="agroup__extended_html_gae5b17ff027cd2150b43a33040250cf3f"><div class="ttname"><a href="group__extended.html#gae5b17ff027cd2150b43a33040250cf3f">mi_register_output</a></div><div class="ttdeci">void mi_register_output(mi_output_fun *out, void *arg)</div><div class="ttdoc">Register an output function.</div></div>
<div class="ttc" id="agroup__extended_html_gaf8e73efc2cbca9ebfdfb166983a04c17"><div class="ttname"><a href="group__extended.html#gaf8e73efc2cbca9ebfdfb166983a04c17">mi_thread_init</a></div><div class="ttdeci">void mi_thread_init(void)</div><div class="ttdoc">Initialize mimalloc on a thread.</div></div>
<div class="ttc" id="agroup__heap_html_ga012c5c8abe22b10043de39ff95909541"><div class="ttname"><a href="group__heap.html#ga012c5c8abe22b10043de39ff95909541">mi_heap_malloc_small</a></div><div class="ttdeci">void * mi_heap_malloc_small(mi_heap_t *heap, size_t size)</div><div class="ttdoc">Allocate a small object in a specific heap.</div></div>
<div class="ttc" id="agroup__heap_html_ga14c667a6e2c5d28762d8cb7d4e057909"><div class="ttname"><a href="group__heap.html#ga14c667a6e2c5d28762d8cb7d4e057909">mi_heap_get_default</a></div><div class="ttdeci">mi_heap_t * mi_heap_get_default()</div><div class="ttdoc">Get the default heap that is used for mi_malloc() et al.</div></div>
<div class="ttc" id="agroup__heap_html_ga2ab1af8d438819b55319c7ef51d1e409"><div class="ttname"><a href="group__heap.html#ga2ab1af8d438819b55319c7ef51d1e409">mi_heap_delete</a></div><div class="ttdeci">void mi_heap_delete(mi_heap_t *heap)</div><div class="ttdoc">Delete a previously allocated heap.</div></div>
<div class="ttc" id="agroup__heap_html_ga33f4f05b7fea7af2113c62a4bf882cc5"><div class="ttname"><a href="group__heap.html#ga33f4f05b7fea7af2113c62a4bf882cc5">mi_heap_malloc_aligned</a></div><div class="ttdeci">void * mi_heap_malloc_aligned(mi_heap_t *heap, size_t size, size_t alignment)</div></div>
<div class="ttc" id="agroup__heap_html_ga349b677dec7da5eacdbc7a385bd62a4a"><div class="ttname"><a href="group__heap.html#ga349b677dec7da5eacdbc7a385bd62a4a">mi_heap_set_default</a></div><div class="ttdeci">mi_heap_t * mi_heap_set_default(mi_heap_t *heap)</div><div class="ttdoc">Set the default heap to use in the current thread for mi_malloc() et al.</div></div>
<div class="ttc" id="agroup__heap_html_ga34a47cde5a5b38c29f1aa3c5e76943c2"><div class="ttname"><a href="group__heap.html#ga34a47cde5a5b38c29f1aa3c5e76943c2">mi_heap_t</a></div><div class="ttdeci">struct mi_heap_s mi_heap_t</div><div class="ttdoc">Type of first-class heaps.</div><div class="ttdef"><b>Definition</b> mimalloc-doc.h:646</div></div>
<div class="ttc" id="agroup__heap_html_ga484e3d01cd174f78c7e53370e5a7c819"><div class="ttname"><a href="group__heap.html#ga484e3d01cd174f78c7e53370e5a7c819">mi_heap_zalloc_aligned_at</a></div><div class="ttdeci">void * mi_heap_zalloc_aligned_at(mi_heap_t *heap, size_t size, size_t alignment, size_t offset)</div></div>
<div class="ttc" id="agroup__heap_html_ga55545a3ec6da29c5b4f62e540ecac1e2"><div class="ttname"><a href="group__heap.html#ga55545a3ec6da29c5b4f62e540ecac1e2">mi_heap_realpath</a></div><div class="ttdeci">char * mi_heap_realpath(mi_heap_t *heap, const char *fname, char *resolved_name)</div><div class="ttdoc">Resolve a file path name using a specific heap to allocate the result.</div></div>
<div class="ttc" id="agroup__heap_html_ga5754e09ccc51dd6bc73885bb6ea21b7a"><div class="ttname"><a href="group__heap.html#ga5754e09ccc51dd6bc73885bb6ea21b7a">mi_heap_strdup</a></div><div class="ttdeci">char * mi_heap_strdup(mi_heap_t *heap, const char *s)</div><div class="ttdoc">Duplicate a string in a specific heap.</div></div>
<div class="ttc" id="agroup__heap_html_ga6466bde8b5712aa34e081a8317f9f471"><div class="ttname"><a href="group__heap.html#ga6466bde8b5712aa34e081a8317f9f471">mi_heap_zalloc_aligned</a></div><div class="ttdeci">void * mi_heap_zalloc_aligned(mi_heap_t *heap, size_t size, size_t alignment)</div></div>
<div class="ttc" id="agroup__heap_html_ga6df988a7219d5707f010d5f3eb0dc3f5"><div class="ttname"><a href="group__heap.html#ga6df988a7219d5707f010d5f3eb0dc3f5">mi_heap_realloc_aligned_at</a></div><div class="ttdeci">void * mi_heap_realloc_aligned_at(mi_heap_t *heap, void *p, size_t newsize, size_t alignment, size_t offset)</div></div>
<div class="ttc" id="agroup__heap_html_ga7922f7495cde30b1984d0e6072419298"><div class="ttname"><a href="group__heap.html#ga7922f7495cde30b1984d0e6072419298">mi_heap_collect</a></div><div class="ttdeci">void mi_heap_collect(mi_heap_t *heap, bool force)</div><div class="ttdoc">Release outstanding resources in a specific heap.</div></div>
<div class="ttc" id="agroup__heap_html_ga9f9c0844edb9717f4feacd79116b8e0d"><div class="ttname"><a href="group__heap.html#ga9f9c0844edb9717f4feacd79116b8e0d">mi_heap_destroy</a></div><div class="ttdeci">void mi_heap_destroy(mi_heap_t *heap)</div><div class="ttdoc">Destroy a heap, freeing all its still allocated blocks.</div></div>
<div class="ttc" id="agroup__heap_html_gaa42ec2079989c4374f2c331d9b35f4e4"><div class="ttname"><a href="group__heap.html#gaa42ec2079989c4374f2c331d9b35f4e4">mi_heap_calloc_aligned_at</a></div><div class="ttdeci">void * mi_heap_calloc_aligned_at(mi_heap_t *heap, size_t count, size_t size, size_t alignment, size_t offset)</div></div>
<div class="ttc" id="agroup__heap_html_gaa718bb226ec0546ba6d1b6cb32179f3a"><div class="ttname"><a href="group__heap.html#gaa718bb226ec0546ba6d1b6cb32179f3a">mi_heap_new</a></div><div class="ttdeci">mi_heap_t * mi_heap_new()</div><div class="ttdoc">Create a new heap that can be used for allocation.</div></div>
<div class="ttc" id="agroup__heap_html_gab0f755c0b21c387fe8e9024200faa372"><div class="ttname"><a href="group__heap.html#gab0f755c0b21c387fe8e9024200faa372">mi_heap_mallocn</a></div><div class="ttdeci">void * mi_heap_mallocn(mi_heap_t *heap, size_t count, size_t size)</div><div class="ttdoc">Allocate count elements in a specific heap.</div></div>
<div class="ttc" id="agroup__heap_html_gab374e206c7034e0d899fb934e4f4a863"><div class="ttname"><a href="group__heap.html#gab374e206c7034e0d899fb934e4f4a863">mi_heap_malloc</a></div><div class="ttdeci">void * mi_heap_malloc(mi_heap_t *heap, size_t size)</div><div class="ttdoc">Allocate in a specific heap.</div></div>
<div class="ttc" id="agroup__heap_html_gabebc796399619d964d8db77aa835e8c1"><div class="ttname"><a href="group__heap.html#gabebc796399619d964d8db77aa835e8c1">mi_heap_zalloc</a></div><div class="ttdeci">void * mi_heap_zalloc(mi_heap_t *heap, size_t size)</div><div class="ttdoc">Allocate zero-initialized in a specific heap.</div></div>
<div class="ttc" id="agroup__heap_html_gac0098aaf231d3e9586c73136d5df95da"><div class="ttname"><a href="group__heap.html#gac0098aaf231d3e9586c73136d5df95da">mi_heap_calloc</a></div><div class="ttdeci">void * mi_heap_calloc(mi_heap_t *heap, size_t count, size_t size)</div><div class="ttdoc">Allocate count zero-initialized elements in a specific heap.</div></div>
<div class="ttc" id="agroup__heap_html_gac5252d6a2e510bd349e4fcb452e6a93a"><div class="ttname"><a href="group__heap.html#gac5252d6a2e510bd349e4fcb452e6a93a">mi_heap_realloc</a></div><div class="ttdeci">void * mi_heap_realloc(mi_heap_t *heap, void *p, size_t newsize)</div></div>
<div class="ttc" id="agroup__heap_html_gac6ac9f0e7be9ab4ff70acfc8dad1235a"><div class="ttname"><a href="group__heap.html#gac6ac9f0e7be9ab4ff70acfc8dad1235a">mi_heap_get_backing</a></div><div class="ttdeci">mi_heap_t * mi_heap_get_backing()</div><div class="ttdoc">Get the backing heap.</div></div>
<div class="ttc" id="agroup__heap_html_gacafcc26df827c7a7de5e850217566108"><div class="ttname"><a href="group__heap.html#gacafcc26df827c7a7de5e850217566108">mi_heap_calloc_aligned</a></div><div class="ttdeci">void * mi_heap_calloc_aligned(mi_heap_t *heap, size_t count, size_t size, size_t alignment)</div></div>
<div class="ttc" id="agroup__heap_html_gaccf7bfe10ce510a000d3547d9cf7fa29"><div class="ttname"><a href="group__heap.html#gaccf7bfe10ce510a000d3547d9cf7fa29">mi_heap_reallocn</a></div><div class="ttdeci">void * mi_heap_reallocn(mi_heap_t *heap, void *p, size_t count, size_t size)</div></div>
<div class="ttc" id="agroup__heap_html_gaccf8c249872f30bf1c2493a09197d734"><div class="ttname"><a href="group__heap.html#gaccf8c249872f30bf1c2493a09197d734">mi_heap_realloc_aligned</a></div><div class="ttdeci">void * mi_heap_realloc_aligned(mi_heap_t *heap, void *p, size_t newsize, size_t alignment)</div></div>
<div class="ttc" id="agroup__heap_html_gad224df78f1fbee942df8adf023e12cf3"><div class="ttname"><a href="group__heap.html#gad224df78f1fbee942df8adf023e12cf3">mi_heap_strndup</a></div><div class="ttdeci">char * mi_heap_strndup(mi_heap_t *heap, const char *s, size_t n)</div><div class="ttdoc">Duplicate a string of at most length n in a specific heap.</div></div>
<div class="ttc" id="agroup__heap_html_gae7cd171425bee04c683c65a3701f0b4a"><div class="ttname"><a href="group__heap.html#gae7cd171425bee04c683c65a3701f0b4a">mi_heap_reallocf</a></div><div class="ttdeci">void * mi_heap_reallocf(mi_heap_t *heap, void *p, size_t newsize)</div></div>
<div class="ttc" id="agroup__heap_html_gae7ffc045c3996497a7f3a5f6fe7b8aaa"><div class="ttname"><a href="group__heap.html#gae7ffc045c3996497a7f3a5f6fe7b8aaa">mi_heap_malloc_aligned_at</a></div><div class="ttdeci">void * mi_heap_malloc_aligned_at(mi_heap_t *heap, size_t size, size_t alignment, size_t offset)</div></div>
<div class="ttc" id="agroup__malloc_html_ga0621af6a5e3aa384e6a1b548958bf583"><div class="ttname"><a href="group__malloc.html#ga0621af6a5e3aa384e6a1b548958bf583">mi_realloc</a></div><div class="ttdeci">void * mi_realloc(void *p, size_t newsize)</div><div class="ttdoc">Re-allocate memory to newsize bytes.</div></div>
<div class="ttc" id="agroup__malloc_html_ga19299856216cfbb08e2628593654dfb0"><div class="ttname"><a href="group__malloc.html#ga19299856216cfbb08e2628593654dfb0">mi_expand</a></div><div class="ttdeci">void * mi_expand(void *p, size_t newsize)</div><div class="ttdoc">Try to re-allocate memory to newsize bytes in place.</div></div>
<div class="ttc" id="agroup__malloc_html_ga23a0fbb452b5dce8e31fab1a1958cacc"><div class="ttname"><a href="group__malloc.html#ga23a0fbb452b5dce8e31fab1a1958cacc">mi_recalloc</a></div><div class="ttdeci">void * mi_recalloc(void *p, size_t count, size_t size)</div><div class="ttdoc">Re-allocate memory to count elements of size bytes, with extra memory initialized to zero.</div></div>
<div class="ttc" id="agroup__malloc_html_ga245ac90ebc2cfdd17de599e5fea59889"><div class="ttname"><a href="group__malloc.html#ga245ac90ebc2cfdd17de599e5fea59889">mi_strdup</a></div><div class="ttdeci">char * mi_strdup(const char *s)</div><div class="ttdoc">Allocate and duplicate a string.</div></div>
<div class="ttc" id="agroup__malloc_html_ga486d0d26b3b3794f6d1cdb41a9aed92d"><div class="ttname"><a href="group__malloc.html#ga486d0d26b3b3794f6d1cdb41a9aed92d">mi_strndup</a></div><div class="ttdeci">char * mi_strndup(const char *s, size_t n)</div><div class="ttdoc">Allocate and duplicate a string up to n bytes.</div></div>
<div class="ttc" id="agroup__malloc_html_ga4dc3a4067037b151a64629fe8a332641"><div class="ttname"><a href="group__malloc.html#ga4dc3a4067037b151a64629fe8a332641">mi_reallocf</a></div><div class="ttdeci">void * mi_reallocf(void *p, size_t newsize)</div><div class="ttdoc">Re-allocate memory to newsize bytes,.</div></div>
<div class="ttc" id="agroup__malloc_html_ga61f46bade3db76ca24aaafedc40de7b6"><div class="ttname"><a href="group__malloc.html#ga61f46bade3db76ca24aaafedc40de7b6">mi_mallocn</a></div><div class="ttdeci">void * mi_mallocn(size_t count, size_t size)</div><div class="ttdoc">Allocate count elements of size bytes.</div></div>
<div class="ttc" id="agroup__malloc_html_ga6686568014b54d1e6c7ac64a076e4f56"><div class="ttname"><a href="group__malloc.html#ga6686568014b54d1e6c7ac64a076e4f56">mi_calloc</a></div><div class="ttdeci">void * mi_calloc(size_t count, size_t size)</div><div class="ttdoc">Allocate zero-initialized count elements of size bytes.</div></div>
<div class="ttc" id="agroup__malloc_html_ga8bddfb4a1270a0854bbcf44cb3980467"><div class="ttname"><a href="group__malloc.html#ga8bddfb4a1270a0854bbcf44cb3980467">mi_reallocn</a></div><div class="ttdeci">void * mi_reallocn(void *p, size_t count, size_t size)</div><div class="ttdoc">Re-allocate memory to count elements of size bytes.</div></div>
<div class="ttc" id="agroup__malloc_html_ga94c3afcc086e85d75a57e9f76b9b71dd"><div class="ttname"><a href="group__malloc.html#ga94c3afcc086e85d75a57e9f76b9b71dd">mi_realpath</a></div><div class="ttdeci">char * mi_realpath(const char *fname, char *resolved_name)</div><div class="ttdoc">Resolve a file path name.</div></div>
<div class="ttc" id="agroup__malloc_html_gae1dd97b542420c87ae085e822b1229e8"><div class="ttname"><a href="group__malloc.html#gae1dd97b542420c87ae085e822b1229e8">mi_malloc</a></div><div class="ttdeci">void * mi_malloc(size_t size)</div><div class="ttdoc">Allocate size bytes.</div></div>
<div class="ttc" id="agroup__malloc_html_gae6e38c4403247a7b40d80419e093bfb8"><div class="ttname"><a href="group__malloc.html#gae6e38c4403247a7b40d80419e093bfb8">mi_zalloc</a></div><div class="ttdeci">void * mi_zalloc(size_t size)</div><div class="ttdoc">Allocate zero-initialized size bytes.</div></div>
<div class="ttc" id="agroup__malloc_html_gaf2c7b89c327d1f60f59e68b9ea644d95"><div class="ttname"><a href="group__malloc.html#gaf2c7b89c327d1f60f59e68b9ea644d95">mi_free</a></div><div class="ttdeci">void mi_free(void *p)</div><div class="ttdoc">Free previously allocated memory.</div></div>
<div class="ttc" id="agroup__options_html_ga04180ae41b0d601421dd62ced40ca050"><div class="ttname"><a href="group__options.html#ga04180ae41b0d601421dd62ced40ca050">mi_option_enable</a></div><div class="ttdeci">void mi_option_enable(mi_option_t option)</div></div>
<div class="ttc" id="agroup__options_html_ga274db5a6ac87cc24ef0b23e7006ed02c"><div class="ttname"><a href="group__options.html#ga274db5a6ac87cc24ef0b23e7006ed02c">mi_option_get_size</a></div><div class="ttdeci">size_t mi_option_get_size(mi_option_t option)</div></div>
<div class="ttc" id="agroup__options_html_ga459ad98f18b3fc9275474807fe0ca188"><div class="ttname"><a href="group__options.html#ga459ad98f18b3fc9275474807fe0ca188">mi_option_is_enabled</a></div><div class="ttdeci">bool mi_option_is_enabled(mi_option_t option)</div></div>
<div class="ttc" id="agroup__options_html_ga65518b69ec5d32336b50e07f74b3f629"><div class="ttname"><a href="group__options.html#ga65518b69ec5d32336b50e07f74b3f629">mi_option_set_enabled_default</a></div><div class="ttdeci">void mi_option_set_enabled_default(mi_option_t option, bool enable)</div></div>
<div class="ttc" id="agroup__options_html_ga7e8af195cc81d3fa64ccf2662caa565a"><div class="ttname"><a href="group__options.html#ga7e8af195cc81d3fa64ccf2662caa565a">mi_option_get</a></div><div class="ttdeci">long mi_option_get(mi_option_t option)</div></div>
<div class="ttc" id="agroup__options_html_ga7ef623e440e6e5545cb08c94e71e4b90"><div class="ttname"><a href="group__options.html#ga7ef623e440e6e5545cb08c94e71e4b90">mi_option_set_default</a></div><div class="ttdeci">void mi_option_set_default(mi_option_t option, long value)</div></div>
<div class="ttc" id="agroup__options_html_ga96ad9c406338bd314cfe878cfc9bf723"><div class="ttname"><a href="group__options.html#ga96ad9c406338bd314cfe878cfc9bf723">mi_option_get_clamp</a></div><div class="ttdeci">long mi_option_get_clamp(mi_option_t option, long min, long max)</div></div>
<div class="ttc" id="agroup__options_html_ga9a13d05fcb77489cb06d4d017ebd8bed"><div class="ttname"><a href="group__options.html#ga9a13d05fcb77489cb06d4d017ebd8bed">mi_option_set_enabled</a></div><div class="ttdeci">void mi_option_set_enabled(mi_option_t option, bool enable)</div></div>
<div class="ttc" id="agroup__options_html_gaebf6ff707a2e688ebb1a2296ca564054"><div class="ttname"><a href="group__options.html#gaebf6ff707a2e688ebb1a2296ca564054">mi_option_disable</a></div><div class="ttdeci">void mi_option_disable(mi_option_t option)</div></div>
<div class="ttc" id="agroup__options_html_gaf84921c32375e25754dc2ee6a911fa60"><div class="ttname"><a href="group__options.html#gaf84921c32375e25754dc2ee6a911fa60">mi_option_set</a></div><div class="ttdeci">void mi_option_set(mi_option_t option, long value)</div></div>
<div class="ttc" id="agroup__options_html_gafebf7ed116adb38ae5218bc3ce06884c"><div class="ttname"><a href="group__options.html#gafebf7ed116adb38ae5218bc3ce06884c">mi_option_t</a></div><div class="ttdeci">mi_option_t</div><div class="ttdoc">Runtime options.</div><div class="ttdef"><b>Definition</b> mimalloc-doc.h:911</div></div>
<div class="ttc" id="agroup__options_html_ggafebf7ed116adb38ae5218bc3ce06884ca009e4b5684922ce664d73d2a8e1698d9"><div class="ttname"><a href="group__options.html#ggafebf7ed116adb38ae5218bc3ce06884ca009e4b5684922ce664d73d2a8e1698d9">mi_option_abandoned_reclaim_on_free</a></div><div class="ttdeci">@ mi_option_abandoned_reclaim_on_free</div><div class="ttdoc">allow to reclaim an abandoned segment on a free (=1)</div><div class="ttdef"><b>Definition</b> mimalloc-doc.h:941</div></div>
<div class="ttc" id="agroup__options_html_ggafebf7ed116adb38ae5218bc3ce06884ca02005f164bdf03f5f00c5be726adf487"><div class="ttname"><a href="group__options.html#ggafebf7ed116adb38ae5218bc3ce06884ca02005f164bdf03f5f00c5be726adf487">mi_option_purge_extend_delay</a></div><div class="ttdeci">@ mi_option_purge_extend_delay</div><div class="ttdoc">extend purge delay on each subsequent delay (=1)</div><div class="ttdef"><b>Definition</b> mimalloc-doc.h:942</div></div>
<div class="ttc" id="agroup__options_html_ggafebf7ed116adb38ae5218bc3ce06884ca0957ef73b2550764b4840edf48422fda"><div class="ttname"><a href="group__options.html#ggafebf7ed116adb38ae5218bc3ce06884ca0957ef73b2550764b4840edf48422fda">mi_option_show_stats</a></div><div class="ttdeci">@ mi_option_show_stats</div><div class="ttdoc">Print statistics on termination.</div><div class="ttdef"><b>Definition</b> mimalloc-doc.h:914</div></div>
<div class="ttc" id="agroup__options_html_ggafebf7ed116adb38ae5218bc3ce06884ca0ac33a18f6b659fcfaf44efb0bab1b74"><div class="ttname"><a href="group__options.html#ggafebf7ed116adb38ae5218bc3ce06884ca0ac33a18f6b659fcfaf44efb0bab1b74">mi_option_use_numa_nodes</a></div><div class="ttdeci">@ mi_option_use_numa_nodes</div><div class="ttdoc">0 = use all available numa nodes, otherwise use at most N nodes.</div><div class="ttdef"><b>Definition</b> mimalloc-doc.h:935</div></div>
<div class="ttc" id="agroup__options_html_ggafebf7ed116adb38ae5218bc3ce06884ca11e62ed69200a489a5be955582078c0c"><div class="ttname"><a href="group__options.html#ggafebf7ed116adb38ae5218bc3ce06884ca11e62ed69200a489a5be955582078c0c">mi_option_abandoned_page_purge</a></div><div class="ttdeci">@ mi_option_abandoned_page_purge</div><div class="ttdoc">immediately purge delayed purges on thread termination</div><div class="ttdef"><b>Definition</b> mimalloc-doc.h:933</div></div>
<div class="ttc" id="agroup__options_html_ggafebf7ed116adb38ae5218bc3ce06884ca17a190c25be381142d87e0468c4c068c"><div class="ttname"><a href="group__options.html#ggafebf7ed116adb38ae5218bc3ce06884ca17a190c25be381142d87e0468c4c068c">mi_option_eager_commit_delay</a></div><div class="ttdeci">@ mi_option_eager_commit_delay</div><div class="ttdoc">the first N segments per thread are not eagerly committed (but per page in the segment on demand)</div><div class="ttdef"><b>Definition</b> mimalloc-doc.h:931</div></div>
<div class="ttc" id="agroup__options_html_ggafebf7ed116adb38ae5218bc3ce06884ca1e8de72c93da7ff22d91e1e27b52ac2b"><div class="ttname"><a href="group__options.html#ggafebf7ed116adb38ae5218bc3ce06884ca1e8de72c93da7ff22d91e1e27b52ac2b">mi_option_eager_commit</a></div><div class="ttdeci">@ mi_option_eager_commit</div><div class="ttdoc">eager commit segments? (after eager_commit_delay segments) (enabled by default).</div><div class="ttdef"><b>Definition</b> mimalloc-doc.h:930</div></div>
<div class="ttc" id="agroup__options_html_ggafebf7ed116adb38ae5218bc3ce06884ca38c67733a3956a1f4eeaca89fab9e78e"><div class="ttname"><a href="group__options.html#ggafebf7ed116adb38ae5218bc3ce06884ca38c67733a3956a1f4eeaca89fab9e78e">mi_option_visit_abandoned</a></div><div class="ttdeci">@ mi_option_visit_abandoned</div><div class="ttdoc">allow visiting heap blocks from abandoned threads (=0)</div><div class="ttdef"><b>Definition</b> mimalloc-doc.h:944</div></div>
<div class="ttc" id="agroup__options_html_ggafebf7ed116adb38ae5218bc3ce06884ca4b74ae2a69e445de6c2361b73c1d14bf"><div class="ttname"><a href="group__options.html#ggafebf7ed116adb38ae5218bc3ce06884ca4b74ae2a69e445de6c2361b73c1d14bf">mi_option_os_tag</a></div><div class="ttdeci">@ mi_option_os_tag</div><div class="ttdoc">tag used for OS logging (macOS only for now) (=100)</div><div class="ttdef"><b>Definition</b> mimalloc-doc.h:926</div></div>
<div class="ttc" id="agroup__options_html_ggafebf7ed116adb38ae5218bc3ce06884ca5b4357b74be0d87568036c32eb1a2e4a"><div class="ttname"><a href="group__options.html#ggafebf7ed116adb38ae5218bc3ce06884ca5b4357b74be0d87568036c32eb1a2e4a">_mi_option_last</a></div><div class="ttdeci">@ _mi_option_last</div><div class="ttdef"><b>Definition</b> mimalloc-doc.h:946</div></div>
<div class="ttc" id="agroup__options_html_ggafebf7ed116adb38ae5218bc3ce06884ca6364331e305e7d3c0218b058ff3afc88"><div class="ttname"><a href="group__options.html#ggafebf7ed116adb38ae5218bc3ce06884ca6364331e305e7d3c0218b058ff3afc88">mi_option_destroy_on_exit</a></div><div class="ttdeci">@ mi_option_destroy_on_exit</div><div class="ttdoc">if set, release all memory on exit; sometimes used for dynamic unloading but can be unsafe</div><div class="ttdef"><b>Definition</b> mimalloc-doc.h:939</div></div>
<div class="ttc" id="agroup__options_html_ggafebf7ed116adb38ae5218bc3ce06884ca7c8b7bf5281c581bad64f5daa6442777"><div class="ttname"><a href="group__options.html#ggafebf7ed116adb38ae5218bc3ce06884ca7c8b7bf5281c581bad64f5daa6442777">mi_option_verbose</a></div><div class="ttdeci">@ mi_option_verbose</div><div class="ttdoc">Print verbose messages.</div><div class="ttdef"><b>Definition</b> mimalloc-doc.h:915</div></div>
<div class="ttc" id="agroup__options_html_ggafebf7ed116adb38ae5218bc3ce06884ca7cc4804ced69004fa42a9a136a9ba556"><div class="ttname"><a href="group__options.html#ggafebf7ed116adb38ae5218bc3ce06884ca7cc4804ced69004fa42a9a136a9ba556">mi_option_allow_large_os_pages</a></div><div class="ttdeci">@ mi_option_allow_large_os_pages</div><div class="ttdoc">allow large (2 or 4 MiB) OS pages, implies eager commit. If false, also disables THP for the process.</div><div class="ttdef"><b>Definition</b> mimalloc-doc.h:923</div></div>
<div class="ttc" id="agroup__options_html_ggafebf7ed116adb38ae5218bc3ce06884ca8236501f1ab45d26e6fd885d191a2b5e"><div class="ttname"><a href="group__options.html#ggafebf7ed116adb38ae5218bc3ce06884ca8236501f1ab45d26e6fd885d191a2b5e">mi_option_arena_purge_mult</a></div><div class="ttdeci">@ mi_option_arena_purge_mult</div><div class="ttdoc">multiplier for purge_delay for the purging delay for arenas (=10)</div><div class="ttdef"><b>Definition</b> mimalloc-doc.h:940</div></div>
<div class="ttc" id="agroup__options_html_ggafebf7ed116adb38ae5218bc3ce06884ca8f51df355bf6651db899e6085b54865e"><div class="ttname"><a href="group__options.html#ggafebf7ed116adb38ae5218bc3ce06884ca8f51df355bf6651db899e6085b54865e">mi_option_retry_on_oom</a></div><div class="ttdeci">@ mi_option_retry_on_oom</div><div class="ttdoc">retry on out-of-memory for N milli seconds (=400), set to 0 to disable retries. (only on windows)</div><div class="ttdef"><b>Definition</b> mimalloc-doc.h:927</div></div>
<div class="ttc" id="agroup__options_html_ggafebf7ed116adb38ae5218bc3ce06884ca9d15c5e3d2115eef681c17e4dd5ab9a4"><div class="ttname"><a href="group__options.html#ggafebf7ed116adb38ae5218bc3ce06884ca9d15c5e3d2115eef681c17e4dd5ab9a4">mi_option_purge_decommits</a></div><div class="ttdeci">@ mi_option_purge_decommits</div><div class="ttdoc">should a memory purge decommit? (=1). Set to 0 to use memory reset on a purge (instead of decommit)</div><div class="ttdef"><b>Definition</b> mimalloc-doc.h:924</div></div>
<div class="ttc" id="agroup__options_html_ggafebf7ed116adb38ae5218bc3ce06884ca9fa61bd9668479f8452d2195759444cc"><div class="ttname"><a href="group__options.html#ggafebf7ed116adb38ae5218bc3ce06884ca9fa61bd9668479f8452d2195759444cc">mi_option_limit_os_alloc</a></div><div class="ttdeci">@ mi_option_limit_os_alloc</div><div class="ttdoc">If set to 1, do not use OS memory for allocation (but only pre-reserved arenas)</div><div class="ttdef"><b>Definition</b> mimalloc-doc.h:937</div></div>
<div class="ttc" id="agroup__options_html_ggafebf7ed116adb38ae5218bc3ce06884caa13e7926d4339d2aa6fbf61d4473fd5c"><div class="ttname"><a href="group__options.html#ggafebf7ed116adb38ae5218bc3ce06884caa13e7926d4339d2aa6fbf61d4473fd5c">mi_option_reserve_huge_os_pages_at</a></div><div class="ttdeci">@ mi_option_reserve_huge_os_pages_at</div><div class="ttdoc">Reserve N huge OS pages at a specific NUMA node N.</div><div class="ttdef"><b>Definition</b> mimalloc-doc.h:921</div></div>
<div class="ttc" id="agroup__options_html_ggafebf7ed116adb38ae5218bc3ce06884caa9ad9005d7017c8c30ad2d6ba31db909"><div class="ttname"><a href="group__options.html#ggafebf7ed116adb38ae5218bc3ce06884caa9ad9005d7017c8c30ad2d6ba31db909">mi_option_max_segment_reclaim</a></div><div class="ttdeci">@ mi_option_max_segment_reclaim</div><div class="ttdoc">max. percentage of the abandoned segments can be reclaimed per try (=10%)</div><div class="ttdef"><b>Definition</b> mimalloc-doc.h:938</div></div>
<div class="ttc" id="agroup__options_html_ggafebf7ed116adb38ae5218bc3ce06884cab1c88e23ae290bbeec824038a97959de"><div class="ttname"><a href="group__options.html#ggafebf7ed116adb38ae5218bc3ce06884cab1c88e23ae290bbeec824038a97959de">mi_option_arena_reserve</a></div><div class="ttdeci">@ mi_option_arena_reserve</div><div class="ttdoc">initial memory size for arena reservation (= 1 GiB on 64-bit) (internally, this value is in KiB; use ...</div><div class="ttdef"><b>Definition</b> mimalloc-doc.h:925</div></div>
<div class="ttc" id="agroup__options_html_ggafebf7ed116adb38ae5218bc3ce06884caca7ed041be3b0b9d0b82432c7bf41af2"><div class="ttname"><a href="group__options.html#ggafebf7ed116adb38ae5218bc3ce06884caca7ed041be3b0b9d0b82432c7bf41af2">mi_option_reserve_huge_os_pages</a></div><div class="ttdeci">@ mi_option_reserve_huge_os_pages</div><div class="ttdoc">reserve N huge OS pages (1GiB pages) at startup</div><div class="ttdef"><b>Definition</b> mimalloc-doc.h:920</div></div>
<div class="ttc" id="agroup__options_html_ggafebf7ed116adb38ae5218bc3ce06884cadcfb5a09580361b1be65901d2d812de6"><div class="ttname"><a href="group__options.html#ggafebf7ed116adb38ae5218bc3ce06884cadcfb5a09580361b1be65901d2d812de6">mi_option_disallow_os_alloc</a></div><div class="ttdeci">@ mi_option_disallow_os_alloc</div><div class="ttdoc">1 = do not use OS memory for allocation (but only programmatically reserved arenas)</div><div class="ttdef"><b>Definition</b> mimalloc-doc.h:936</div></div>
<div class="ttc" id="agroup__options_html_ggafebf7ed116adb38ae5218bc3ce06884cadd351e615acd8563529c20a347be7290"><div class="ttname"><a href="group__options.html#ggafebf7ed116adb38ae5218bc3ce06884cadd351e615acd8563529c20a347be7290">mi_option_purge_delay</a></div><div class="ttdeci">@ mi_option_purge_delay</div><div class="ttdoc">memory purging is delayed by N milli seconds; use 0 for immediate purging or -1 for no purging at all...</div><div class="ttdef"><b>Definition</b> mimalloc-doc.h:934</div></div>
<div class="ttc" id="agroup__options_html_ggafebf7ed116adb38ae5218bc3ce06884caeae1696100e4057ffc4182730cc04e40"><div class="ttname"><a href="group__options.html#ggafebf7ed116adb38ae5218bc3ce06884caeae1696100e4057ffc4182730cc04e40">mi_option_disallow_arena_alloc</a></div><div class="ttdeci">@ mi_option_disallow_arena_alloc</div><div class="ttdoc">1 = do not use arena&#39;s for allocation (except if using specific arena id&#39;s)</div><div class="ttdef"><b>Definition</b> mimalloc-doc.h:943</div></div>
<div class="ttc" id="agroup__options_html_ggafebf7ed116adb38ae5218bc3ce06884caec6ecbe29d46a48205ed8823a8a52a6a"><div class="ttname"><a href="group__options.html#ggafebf7ed116adb38ae5218bc3ce06884caec6ecbe29d46a48205ed8823a8a52a6a">mi_option_max_errors</a></div><div class="ttdeci">@ mi_option_max_errors</div><div class="ttdoc">issue at most N error messages</div><div class="ttdef"><b>Definition</b> mimalloc-doc.h:916</div></div>
<div class="ttc" id="agroup__options_html_ggafebf7ed116adb38ae5218bc3ce06884caf9595921087e942602ee079158762665"><div class="ttname"><a href="group__options.html#ggafebf7ed116adb38ae5218bc3ce06884caf9595921087e942602ee079158762665">mi_option_max_warnings</a></div><div class="ttdeci">@ mi_option_max_warnings</div><div class="ttdoc">issue at most N warning messages</div><div class="ttdef"><b>Definition</b> mimalloc-doc.h:917</div></div>
<div class="ttc" id="agroup__options_html_ggafebf7ed116adb38ae5218bc3ce06884cafbf4822e5c00732c5984b32a032837f0"><div class="ttname"><a href="group__options.html#ggafebf7ed116adb38ae5218bc3ce06884cafbf4822e5c00732c5984b32a032837f0">mi_option_show_errors</a></div><div class="ttdeci">@ mi_option_show_errors</div><div class="ttdoc">Print error messages.</div><div class="ttdef"><b>Definition</b> mimalloc-doc.h:913</div></div>
<div class="ttc" id="agroup__options_html_ggafebf7ed116adb38ae5218bc3ce06884cafbf4999c828cf79a0fb2de65d23f7333"><div class="ttname"><a href="group__options.html#ggafebf7ed116adb38ae5218bc3ce06884cafbf4999c828cf79a0fb2de65d23f7333">mi_option_reserve_os_memory</a></div><div class="ttdeci">@ mi_option_reserve_os_memory</div><div class="ttdoc">reserve specified amount of OS memory in an arena at startup (internally, this value is in KiB; use m...</div><div class="ttdef"><b>Definition</b> mimalloc-doc.h:922</div></div>
<div class="ttc" id="agroup__options_html_ggafebf7ed116adb38ae5218bc3ce06884cafd0c5ddbc4b59fd8b5216871728167a5"><div class="ttname"><a href="group__options.html#ggafebf7ed116adb38ae5218bc3ce06884cafd0c5ddbc4b59fd8b5216871728167a5">mi_option_arena_eager_commit</a></div><div class="ttdeci">@ mi_option_arena_eager_commit</div><div class="ttdoc">eager commit arenas? Use 2 to enable just on overcommit systems (=2)</div><div class="ttdef"><b>Definition</b> mimalloc-doc.h:932</div></div>
<div class="ttc" id="agroup__posix_html_ga06d07cf357bbac5c73ba5d0c0c421e17"><div class="ttname"><a href="group__posix.html#ga06d07cf357bbac5c73ba5d0c0c421e17">mi_malloc_usable_size</a></div><div class="ttdeci">size_t mi_malloc_usable_size(const void *p)</div></div>
<div class="ttc" id="agroup__posix_html_ga0d28d5cf61e6bfbb18c63092939fe5c9"><div class="ttname"><a href="group__posix.html#ga0d28d5cf61e6bfbb18c63092939fe5c9">mi_free_aligned</a></div><div class="ttdeci">void mi_free_aligned(void *p, size_t alignment)</div></div>
<div class="ttc" id="agroup__posix_html_ga16570deddd559001b44953eedbad0084"><div class="ttname"><a href="group__posix.html#ga16570deddd559001b44953eedbad0084">mi_aligned_offset_recalloc</a></div><div class="ttdeci">void * mi_aligned_offset_recalloc(void *p, size_t newcount, size_t size, size_t alignment, size_t offset)</div></div>
<div class="ttc" id="agroup__posix_html_ga430ed1513f0571ff83be00ec58a98ee0"><div class="ttname"><a href="group__posix.html#ga430ed1513f0571ff83be00ec58a98ee0">mi_aligned_alloc</a></div><div class="ttdeci">void * mi_aligned_alloc(size_t alignment, size_t size)</div></div>
<div class="ttc" id="agroup__posix_html_ga4531c9e775bb3ae12db57c1ba8a5d7de"><div class="ttname"><a href="group__posix.html#ga4531c9e775bb3ae12db57c1ba8a5d7de">mi_malloc_size</a></div><div class="ttdeci">size_t mi_malloc_size(const void *p)</div></div>
<div class="ttc" id="agroup__posix_html_ga50cafb9722020402f065de93799f64ca"><div class="ttname"><a href="group__posix.html#ga50cafb9722020402f065de93799f64ca">mi_valloc</a></div><div class="ttdeci">void * mi_valloc(size_t size)</div></div>
<div class="ttc" id="agroup__posix_html_ga644bebccdbb2821542dd8c7e7641f476"><div class="ttname"><a href="group__posix.html#ga644bebccdbb2821542dd8c7e7641f476">mi_pvalloc</a></div><div class="ttdeci">void * mi_pvalloc(size_t size)</div></div>
<div class="ttc" id="agroup__posix_html_ga66bcfeb4faedbb42b796bc680821ef84"><div class="ttname"><a href="group__posix.html#ga66bcfeb4faedbb42b796bc680821ef84">mi__expand</a></div><div class="ttdeci">void * mi__expand(void *p, size_t newsize)</div></div>
<div class="ttc" id="agroup__posix_html_ga6ac6a6a8f3c96f1af24bb8d0439cbbd1"><div class="ttname"><a href="group__posix.html#ga6ac6a6a8f3c96f1af24bb8d0439cbbd1">mi_wdupenv_s</a></div><div class="ttdeci">int mi_wdupenv_s(unsigned short **buf, size_t *size, const unsigned short *name)</div></div>
<div class="ttc" id="agroup__posix_html_ga705dc7a64bffacfeeb0141501a5c35d7"><div class="ttname"><a href="group__posix.html#ga705dc7a64bffacfeeb0141501a5c35d7">mi_cfree</a></div><div class="ttdeci">void mi_cfree(void *p)</div><div class="ttdoc">Just as free but also checks if the pointer p belongs to our heap.</div></div>
<div class="ttc" id="agroup__posix_html_ga726867f13fd29ca36064954c0285b1d8"><div class="ttname"><a href="group__posix.html#ga726867f13fd29ca36064954c0285b1d8">mi_memalign</a></div><div class="ttdeci">void * mi_memalign(size_t alignment, size_t size)</div></div>
<div class="ttc" id="agroup__posix_html_ga72e9d7ffb5fe94d69bc722c8506e27bc"><div class="ttname"><a href="group__posix.html#ga72e9d7ffb5fe94d69bc722c8506e27bc">mi_free_size_aligned</a></div><div class="ttdeci">void mi_free_size_aligned(void *p, size_t size, size_t alignment)</div></div>
<div class="ttc" id="agroup__posix_html_ga7b82a44094fdec4d2084eb4288a979b0"><div class="ttname"><a href="group__posix.html#ga7b82a44094fdec4d2084eb4288a979b0">mi_mbsdup</a></div><div class="ttdeci">unsigned char * mi_mbsdup(const unsigned char *s)</div></div>
<div class="ttc" id="agroup__posix_html_ga7e1934d60a3e697950eeb48e042bfad5"><div class="ttname"><a href="group__posix.html#ga7e1934d60a3e697950eeb48e042bfad5">mi_reallocarr</a></div><div class="ttdeci">int mi_reallocarr(void *p, size_t count, size_t size)</div><div class="ttdoc">Corresponds to reallocarr in NetBSD.</div></div>
<div class="ttc" id="agroup__posix_html_ga9d23ac7885fed7413c11d8e0ffa31071"><div class="ttname"><a href="group__posix.html#ga9d23ac7885fed7413c11d8e0ffa31071">mi_malloc_good_size</a></div><div class="ttdeci">size_t mi_malloc_good_size(size_t size)</div></div>
<div class="ttc" id="agroup__posix_html_gaa9fd7f25c9ac3a20e89b33bd6e383fcf"><div class="ttname"><a href="group__posix.html#gaa9fd7f25c9ac3a20e89b33bd6e383fcf">mi_wcsdup</a></div><div class="ttdeci">unsigned short * mi_wcsdup(const unsigned short *s)</div></div>
<div class="ttc" id="agroup__posix_html_gab41369c1a1da7504013a7a0b1d4dd958"><div class="ttname"><a href="group__posix.html#gab41369c1a1da7504013a7a0b1d4dd958">mi_dupenv_s</a></div><div class="ttdeci">int mi_dupenv_s(char **buf, size_t *size, const char *name)</div></div>
<div class="ttc" id="agroup__posix_html_gacff84f226ba9feb2031b8992e5579447"><div class="ttname"><a href="group__posix.html#gacff84f226ba9feb2031b8992e5579447">mi_posix_memalign</a></div><div class="ttdeci">int mi_posix_memalign(void **p, size_t alignment, size_t size)</div></div>
<div class="ttc" id="agroup__posix_html_gad5a69c8fea96aa2b7a7c818c2130090a"><div class="ttname"><a href="group__posix.html#gad5a69c8fea96aa2b7a7c818c2130090a">mi__posix_memalign</a></div><div class="ttdeci">int mi__posix_memalign(void **p, size_t alignment, size_t size)</div></div>
<div class="ttc" id="agroup__posix_html_gadfeccb72748a2f6305474a37d9d57bce"><div class="ttname"><a href="group__posix.html#gadfeccb72748a2f6305474a37d9d57bce">mi_reallocarray</a></div><div class="ttdeci">void * mi_reallocarray(void *p, size_t count, size_t size)</div><div class="ttdoc">Correspond s to reallocarray in FreeBSD.</div></div>
<div class="ttc" id="agroup__posix_html_gae01389eedab8d67341ff52e2aad80ebb"><div class="ttname"><a href="group__posix.html#gae01389eedab8d67341ff52e2aad80ebb">mi_free_size</a></div><div class="ttdeci">void mi_free_size(void *p, size_t size)</div></div>
<div class="ttc" id="agroup__posix_html_gaf82cbb4b4f24acf723348628451798d3"><div class="ttname"><a href="group__posix.html#gaf82cbb4b4f24acf723348628451798d3">mi_aligned_recalloc</a></div><div class="ttdeci">void * mi_aligned_recalloc(void *p, size_t newcount, size_t size, size_t alignment)</div></div>
<div class="ttc" id="agroup__zeroinit_html_ga07b5bcbaf00d0d2e598c232982588496"><div class="ttname"><a href="group__zeroinit.html#ga07b5bcbaf00d0d2e598c232982588496">mi_heap_recalloc_aligned_at</a></div><div class="ttdeci">void * mi_heap_recalloc_aligned_at(mi_heap_t *heap, void *p, size_t newcount, size_t size, size_t alignment, size_t offset)</div></div>
<div class="ttc" id="agroup__zeroinit_html_ga2bafa79c3f98ea74882349d44cffa5d9"><div class="ttname"><a href="group__zeroinit.html#ga2bafa79c3f98ea74882349d44cffa5d9">mi_heap_rezalloc_aligned_at</a></div><div class="ttdeci">void * mi_heap_rezalloc_aligned_at(mi_heap_t *heap, void *p, size_t newsize, size_t alignment, size_t offset)</div></div>
<div class="ttc" id="agroup__zeroinit_html_ga3e2169b48683aa0ab64f813fd68d839e"><div class="ttname"><a href="group__zeroinit.html#ga3e2169b48683aa0ab64f813fd68d839e">mi_recalloc_aligned</a></div><div class="ttdeci">void * mi_recalloc_aligned(void *p, size_t newcount, size_t size, size_t alignment)</div></div>
<div class="ttc" id="agroup__zeroinit_html_ga4d02404fe1e7db00beb65f185e012caa"><div class="ttname"><a href="group__zeroinit.html#ga4d02404fe1e7db00beb65f185e012caa">mi_rezalloc_aligned</a></div><div class="ttdeci">void * mi_rezalloc_aligned(void *p, size_t newsize, size_t alignment)</div></div>
<div class="ttc" id="agroup__zeroinit_html_ga5129f6dc46ee1613d918820a8a0533a7"><div class="ttname"><a href="group__zeroinit.html#ga5129f6dc46ee1613d918820a8a0533a7">mi_heap_rezalloc_aligned</a></div><div class="ttdeci">void * mi_heap_rezalloc_aligned(mi_heap_t *heap, void *p, size_t newsize, size_t alignment)</div></div>
<div class="ttc" id="agroup__zeroinit_html_ga6843a88285bbfcc3bdfccc60aafd1270"><div class="ttname"><a href="group__zeroinit.html#ga6843a88285bbfcc3bdfccc60aafd1270">mi_rezalloc_aligned_at</a></div><div class="ttdeci">void * mi_rezalloc_aligned_at(void *p, size_t newsize, size_t alignment, size_t offset)</div></div>
<div class="ttc" id="agroup__zeroinit_html_ga87ddd674bf1c67237d780d0b9e0f0f32"><div class="ttname"><a href="group__zeroinit.html#ga87ddd674bf1c67237d780d0b9e0f0f32">mi_heap_recalloc_aligned</a></div><div class="ttdeci">void * mi_heap_recalloc_aligned(mi_heap_t *heap, void *p, size_t newcount, size_t size, size_t alignment)</div></div>
<div class="ttc" id="agroup__zeroinit_html_ga8d8b7ebb24b513cd84d1a696048da60d"><div class="ttname"><a href="group__zeroinit.html#ga8d8b7ebb24b513cd84d1a696048da60d">mi_heap_rezalloc</a></div><div class="ttdeci">void * mi_heap_rezalloc(mi_heap_t *heap, void *p, size_t newsize)</div></div>
<div class="ttc" id="agroup__zeroinit_html_gaae25e4ddedd4e0fb61b1a8bd5d452750"><div class="ttname"><a href="group__zeroinit.html#gaae25e4ddedd4e0fb61b1a8bd5d452750">mi_recalloc_aligned_at</a></div><div class="ttdeci">void * mi_recalloc_aligned_at(void *p, size_t newcount, size_t size, size_t alignment, size_t offset)</div></div>
<div class="ttc" id="agroup__zeroinit_html_gad1a0d325d930eeb80f25e3fea37aacde"><div class="ttname"><a href="group__zeroinit.html#gad1a0d325d930eeb80f25e3fea37aacde">mi_heap_recalloc</a></div><div class="ttdeci">void * mi_heap_recalloc(mi_heap_t *heap, void *p, size_t newcount, size_t size)</div></div>
<div class="ttc" id="agroup__zeroinit_html_gadfd34cd7b4f2bbda7ae06367a6360756"><div class="ttname"><a href="group__zeroinit.html#gadfd34cd7b4f2bbda7ae06367a6360756">mi_rezalloc</a></div><div class="ttdeci">void * mi_rezalloc(void *p, size_t newsize)</div></div>
</div><!-- fragment --></div><!-- contents -->
</div><!-- doc-content -->
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
  <ul>
    <li class="navelem"><b>mimalloc-doc.h</b></li>
    <li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.13.1 </li>
  </ul>
</div>
</body>
</html>
